2010-12-14 15 views
0

Wie kann ich Daten von der Aktion in der Steuerung zur Anzeige in einem anderen Controller übergeben? Von Aktion in Controler in demselben Controller zu sehen ist einfach: ich einfach in Funktion der Aktion schreiben:Zend Daten von der Aktion in der Steuerung zur Anzeige in einem anderen Controller übergeben

$this->view->assign('error', 'Wrong login'); 

und angesichts Ich erhalte es auf diese Weise:

<?=$this->escape($this->error);?> 

aber wie kann ich Tun Sie es, um es im Hinblick auf einen anderen Controller zu erhalten?

Antwort

0

Ich könnte falsch liegen, aber meine Vermutung ist, dass es für jede Anfrage nur eine Zend_View gibt. Wenn Sie also etwas auf ControllerA setzen und die Ausführung an ControllerB weiterleiten, können Sie auf diese Daten auf die gleiche Weise zugreifen.

Es funktioniert nicht, wenn Sie den Aktionshelfer _redirect verwenden, da es sich um eine Browserumleitung handelt. Um die Ausführung nur an einen anderen "Ort" weiterzuleiten, verwenden Sie stattdessen den Helper _forward.

Eine weitere Option ist die flashmessenger Helfer, dass ein Blick auf die docs

http://framework.zend.com/manual/en/zend.controller.actionhelpers.html