Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
j'essaye de faire ceci :
class ArticleController extends Zend_Controller_Action { function preDispatch() { $this->_forward('index'); } function indexAction() { echo 1; $this->render(); } }
lorsque je mets le forward ça ne fonctionne pas et cela seulement dans mon preDispatch ou postDispatch. Si je comprends bien la documentation ça devrait marcher non ?
voici le message d'erreur :
Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 40961 bytes) in ..../library/Zend/Controller/Dispatcher/Standard.php on line 281
ps : dans la fonction init() ou une méthoded action ça fonctionne.
Hors ligne
test $this->_redirect('/index')
Hors ligne
oui ça marche, $this->_redirect('/index') et j'ai une boucle de redirection mais c'est normal si je fait $this->_redirect('/article/index') mais c'est normal.
Hors ligne
je précise que si je change le controller $this->_forward('index', 'index'); par exemple, ça marche.
Hors ligne
Quand tu fais forward('index'), tu forwards sur l'action 'index', du controller/module courant, tu fais donc une boucle, et à chaque boucle => allocation mémoire jusqu'a que ca sature..
Hors ligne
ha d'accords je vois, je croyais que le foward ne rappelé pas le Predispatch dans le cas où on est sur le même controller.
Merci pour l'information.
Hors ligne