Bonjour,
Je développe un site avec une navigation en Ajax et pour gagner en performance je souhaiterais mettre en cache les vue.
Le problème c'est que selon comment le visiteur arrive sur cette page (lien direct ou ajax), il intègre dans le fichier cache tout le layout (balise html, head, body...) ou pas (ce qui parait logique).
Mais pour ma navigation en ajax, il faudrait que dans le fichier cache, il n'y ait que le contenu de la vue.
Est-ce que quelqu'un aurait une idée ?
Merci d'avance.
Bonsoir.
Comme je ne sais pas si c'est pour la V2 ou la V3 de CakePHP, je te donne un lien pour la V2.
Regardes tout simplement ici : [2.x] Marquer les contenus Non-Cachés dans les Vues.
Par contre, le contenu mis en cache ne changera pas entre le fait que ce soit une requête faite en ajax ou non et j'ai quand même un peu de mal à comprendre pourquoi tu veux faire une différence de mise en cache entre le fait que la page soit appelée en ajax ou non.
Merci pour ta réponse.
C'est pour la V2.
J'avais déjà vu <!--nocache-->. Le problème est que ce que tu mets dans le <!--nocache--> est quand même présent dans le fichier, c'est juste qu'il n'est pas écrit "en dur"
Par exemple un <?php echo $var ?> restera écrit en php dans le fichier s’il est entre le <!--nocache--> sinon il écrira la valeur de $var.
Le contenu du fichier cache change si c'est un appel en Ajax vu que quand j'appelle la page en Ajax, il n'y a pas de layout.
Je récupère seulement le contenu de la vue que je remplace dans la balise <div class="main"></div> du site.
Du coup, je souhaiterais avoir tous les fichiers cache sans le layout.