Je suis sûr que cela semble une question idiote, mais je suis nouveau dans le framework MVC avec Joomla et je n’ai trouvé aucune documentation qui donne une définition claire. Tout ce que je sais jusqu'à présent, c'est que le fichier view.html.php est un fichier d'entrée de la vue.
Je trouve difficile de faire la distinction entre les deux et je veux fondamentalement savoir comment ils fonctionnent et comment les deux fichiers fonctionnent ensemble? Vos commentaires seraient grandement appréciés.
C'est simplement une meilleure pratique utilisée dans de nombreux cadres. L'idée est de conserver votre code HTML dans des fichiers aussi simples que possible (c'est-à-dire presque pas PHP)] de manière à ce qu'ils soient faciles à gérer/à réutiliser.
Laissez-moi expliquer:
Vous utilisez essentiellement la classe JView (view.html.php) qui contient les données que vous souhaitez afficher. Cette classe a une méthode display()
qui sera automatiquement appelée par Joomla lors de la tentative de rendu de la vue. La méthode d'affichage chargera presque automatiquement le fichier default.php par magie.
La vue a un modèle (default.php) qui a accès aux propriétés de la vue et a la responsabilité d’afficher du HTML.
Fondamentalement, la vue a la responsabilité de préparer les données pour le modèle, de sorte que le modèle ne doive rien faire d'autre que des boucles foreach élémentaires ou des variables en écho.
Le modèle est donc aussi stupide que possible. La vue est un peu plus intelligente mais pas trop intelligente, car elle ne doit contenir aucune logique métier.
Est-ce que ça fait du sens?
View.html.php
Ici, vous pouvez écrire votre code de fonctionnalité et la méthode d’affichage chargera automatiquement le fichier default.php. .
Default.php
Cela ressemblera à la page html ici, le résultat de la fonctionnalité sera affiché dans cette page.