Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour
Est-ce qu'il y a une possibilité d'utiliser, d'appeler des controllers depuis tous les modules ? Je m'explque je souhaiterai utiliser/appeller par exemple /auth/register dans tous les modules mais avec le layout du module. Avoir un controller commun à tous lesmodules.
Dernière modification par alien7 (19-03-2008 16:43:52)
Hors ligne
tu peux étendre le Zend_Controller_Action pour ajouter la méthode que tu veux et ainsi construire tes controllers à partir de cette nouvelle classe.
Hors ligne
Oui mais pour les vues je fais comment ? Ca marchera ? Je veux registerAction + sa vue.
De plus j'ai deja etendu Zend_Controller_Action pour le init.
Ce que je veux c'est creer un action registerAction + sa vue, que je peux réutiliser dans n'importe quel module.
Hors ligne
Il est possible de modifier le chemin des vues via une méthode et donc tu peux effectivement faire ce que tu veux en mettant par exemple ton code dans le init() du controller.
C'est une bonne idée ma foi!
Hors ligne
D'accord ca semble etre une bonen idée, je n'y avait pas penser mais comment faire pour le controller.
Je fais donc comme cela :
class Module_IndexController extends Zend_Controller_Action { public function registerAction() { // Je definit le path de la vue $this->view->setScriptPath('./app/default/views/scripts'); } }
mais voilà le script à un formulaire donc ca me pose problème.
Hors ligne
Je ne comprends pas très bien ta problématique.
ton layout register reste un simple formulaire avec
- le login
- le mot de passe
- le submit
tu peux récuperer sans trop de soucis l'url courante et le passer en hidden
Cet hidden permet de rediriger ensuite sur la page voulue
Pour chaque module, tu fais une CSS, qui change la présentation de ton layout.
En tout cas, je pense que je ferrai comme ça, enfin, si j'ai compris ta problématique car je ne vois pas l'intérêt que le contrôleur Toto gère le layout de titi, mais ton exemple est peut être mal choisi pour expliquer ta problématique. D'autant plus, il n'y a pas de raison que le module Toto gère une Action login , qui me semble plus logique d'associer à l'user.
De meme pour la partie register qui est le but de ta question.
Hors ligne
mais voilà le script à un formulaire donc ca me pose problème.
tu peux utiliser le view_helper partial pour rendre juste le bout du formulaire (en fonction du form tu envoye un chemin de script)
Hors ligne
J'arrive très bien à inclure le formulaire avec le view_helper partial, mais y'a encore la derniere etape que je ne comprends pas.
Dans mon formulaire j'ai ca :
<form action="/auth/register" ..> ... </form
Je crée donc dans mon module Admin un controller auth action register avec sa vue dans le code est :
<?php echo $this->partial("auth/register.phtml", "default"); ?>
Mais lorsque je submit mon formualire, si y'a une erreur je me retrouve dans le module default au lieu du module Admin.
J'ai vraiment du mal à expliquer la situation, je suis vraiment desolé.
Hors ligne
Pages: 1