Bonjour,
Pour mon apprentissage de cakephp je compte faire la nouvelle version de mon site et j'aurai besoin d'ajax. Et c'est le seul point ou la formation ne répond pas (pour l’instant). Donc j'ai posé ma petite réflexion entre deux arrêts de bus et le seul moyen que je vois est un moyen barbare... je trouve. Merci de me dire si ma réflexion est pourrie ou non et si elle rentre dans le 'canvas' de CakePHP.
Prenons l'exemple d'un système de commentaire ou j'afficherai seulement les 10 derniers commentaires. En appuyant sur un bouton défini j'en chargerai 10 de plus et ainsi de suite.
Pour afficher c'est dix commentaires en plus il me faut donc une page que j'appelle en ajax, je crée donc une function dans mon controller Comment pour afficher les 10 commentaires suivant par rapport à l'id donné en param. Et je crée un .cpt pour ces dix commentaires ou je demande de ne prendre aucun layout ou alors un vide. Et j'append tout ça dans ma div.comments.
Suis je un cochon avec cette méthode ?
Merci pour vos lumières et coup de bâton ;D.
Bon bah appelle moi Thor le Viking alors car c'est ce que je fais.
Par expérience, le fait de charger un layout est plus simple que de récupérer les informations en JSON et de tout parser ensuite. Cela permet une meilleur réusabilité du code au niveau de la vue et du modèle. Par ailleurs si tu charges les informations en JSON, cela te fait coder une vue quand JS est activé et une vue sans JS d'où duplicata de code.
J'aime bien avoir une compatibilité sans JS au cas où et du coup je code d'abord tout mon système sans JS. Ensuite, on se rend compte que pour faire un système AJAX, il suffit juste de faire les bons $.GET() quand il le faut.
JSON
VUE
Du coup, à moins que tu veuillez charger un nombre incalculables de commentaires d'un seul coup, où que tu as une base de données incommensurable, je te conseille de coder par la vue.
Merci pour ta réponse complète Thor le Viking. J'ai pensé aussi à utiliser les éléments, mais je ne sais pas s'ils ont des limites. Par exemple leurs passer l'id du dernier comment.
Je laisse le sujet ouvert au cas ou d'autres barbares veulent témoigner.