Recherche…


Remarques

MVC signifie Model-View-Controller. Toute application qui sépare son accès aux données, sa logique applicative et son interface utilisateur s'appelle MVC. Il peut exister deux types de MVC: basés sur des conventions et sur des configurations. Exemple, CakePHP est basé sur des conventions, c.-à-d. Il suffit de suivre les instructions du système principal pour préparer votre module en quelques lignes seulement. Magento est basé sur la configuration, c’est-à-dire que vous devez spécifier chaque élément du fichier de configuration de votre module pour le faire fonctionner. Magento a un fichier Controller (pour le routage), Block, Model et Template. Comment fonctionne le MVC de Magento:

  1. Lorsque vous entrez l'URL (quelque chose comme http://mysite.com/frontname/controller/method/param1/value1/param2/value2) , cette URL est interceptée par un fichier PHP appelé index.php qui instancie l'application Magento
  2. L'application Magento instancie l'objet Front Controller
  3. De plus, le contrôleur frontal instancie les objets du routeur (spécifiés dans le tag config.xml du module)
  4. Maintenant, le routeur est responsable de "faire correspondre" le nom de front qui se trouve dans notre URL
  5. Si «match» est trouvé, il voit le nom du contrôleur et le nom de la méthode dans l'URL, qui est finalement appelée.
  6. Maintenant, selon ce qui est écrit dans le nom de l'action (nom de la méthode), il est exécuté. Si des modèles y sont appelés, la méthode du contrôleur instanciera ce modèle et appellera la méthode demandée.
  7. Ensuite, l'action du contrôleur (méthode) instancie l'objet Layout, qui appelle Block spécifié pour ce nom d'action (méthode) (chaque nom d'action de contrôleur est associé à un fichier de bloc et de modèle, disponible dans app / design / frontend ou adminhtml / namespace / module / layout / module.xml, nom du fichier de mise en page (module.xml) se trouve dans config.xml de ce module, dans la balise de mise à jour de la mise en page).
  8. Le fichier modèle (.phtml) appelle maintenant le bloc correspondant pour toute demande de méthode. Donc, si vous écrivez $ this-> methodName dans le fichier .phtml, il vérifiera «methodName» dans le fichier bloc qui est associé au fichier module.xml.
  9. Block contient la logique PHP. Il référence les modèles pour toutes les données de la base de données.
  10. Si Block, Template ou Controller doit obtenir / définir des données depuis / vers la base de données, ils peuvent appeler Model directement comme Mage :: getModel ('modulename / modelname').

Comprendre MVC dans Magento

entrer la description de l'image ici

MVC Flow dans Magento

entrer la description de l'image ici



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow