Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour à tous,
Première question qui peut paraitre évidente à première vue : est-ce que le controller frontal est indispensable dans le modèle MVC de zend framework?
Autrement dit, est-il instancié par défaut par l'application??
Je m'explique :
dans le fichier application.ini, on nous conseil de placer la ligne : resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers", or si dans la class boostrap , la méthode hasResource('frontController') ne retourne rien, sauf si au préalable, on écrit :
$this->bootstrap('FrontController');
Merci de vos réponses...
Hors ligne
De la même manière,
est-il indispensable d'écrire :
$front->dispatch();
N'est pas fait automatiquement par l'application??
Hors ligne
Bonjour,
Oui le contrôleur frontal est indispensable dans l'implémentation du MVC de ZF.
C'est le coeur du MVC.
C'est lui qui va récupérer la requête lors de son entrée dans le système, et qui va, tel un chef d'orchestre, déclencher les opérations nécessaires tout le long du voyage de la requête dans le paradigme MVC.
C'est lui qui va par exemple demander au Routeur d'analyser la requête pour déterminer le triplet module/controller/action à exécuter.
C'est également auprès du contrôleur frontal que sont enregistrés différents plugins qui font agir autour du contrôleur d'actions. C'est le contrôleur frontal qui se charge de les exécuter quand nécessaire.
C'est le contrôleur frontal qui récupère le contenu de la réponse (depuis les contrôleurs d'action) et qui va forger la reponse HTTP et la renvoyer au client.
Ces opérations, parmis d'autres, nous montre bien le rôle primordial de ce contrôleur. C'est le point d'entrée unique de l'application.
L'appelle à la méthode dispatch() est obligatoire, c'est cet appel qui va déclencher tout le processus, en gros en français ça se traduirait par : "Go, prend la requête et fait ce que t'as à faire avec".
Cet appel n'est pas automatique car il est nécessaire de configurer l'application avant de laisser le contrôleur frontal agir.
A+ Benjamin.
Hors ligne