如何从控制器中的操作传递数据以在另一个控制器中查看?从控制器中的动作到在同一个控制器中查看很容易:我只是在动作的函数中编写:
$this->view->assign('error', 'Wrong login');
鉴于我以这种方式收到它:
<?=$this->escape($this->error);?>
但是鉴于另一个控制器,我该怎么做才能接收它?
如何从控制器中的操作传递数据以在另一个控制器中查看?从控制器中的动作到在同一个控制器中查看很容易:我只是在动作的函数中编写:
$this->view->assign('error', 'Wrong login');
鉴于我以这种方式收到它:
<?=$this->escape($this->error);?>
但是鉴于另一个控制器,我该怎么做才能接收它?
我可能错了,但我的猜测是每个请求只有一个 Zend_View,所以如果您在 ControllerA 上设置一些内容并将执行转发到 ControllerB,您可以以相同的方式访问该数据。
如果您使用操作帮助程序 _redirect 它将不起作用,因为它是浏览器重定向,只是将执行转发到另一个“地方”,而是使用 _forward 帮助程序。
另一种选择是 flashMessenger 助手,看看文档
http://framework.zend.com/manual/en/zend.controller.actionhelpers.html