我正在使用$this->view->action
调用一个操作以获得一些响应。在这个动作中,我使用的是$this->_forward()
。然而,当我用CCD_ 3调用它时,它不起作用。
我打电话给:
$result = $this->view->action('search-results', 'controller', 'mobule', $requestParams);
在searchResulsAction()
内部,我正在使用
$this->_forward("get-listings", "controller", "module", $requestParams);
但调用不会转到getListingsAction()
Zend View Helpers文档中的第一个:
导致_forward()或重定向的操作被视为无效,并将返回一个空字符串。
第二,当你有$this->view->action
时,你应该仍然在控制器内,这意味着你应该实际使用$this->_forward('search-results', 'controller', 'mobule', $requestParams)
。除非你需要留在控制器和视图中,并且不想最终出现在getListingsAction()
和视图中?
如果您需要保留在该控制器/视图中,您可能应该通过将其他控制器中的这些片段提取到Action Helpers或view Helpers中来重组代码。如果你真的想在getListingsAction中结束,那么转发就是你应该做的