$this->_使用$this->;调用操作时转发不起作用;视图->;Zend中的动作


$this->_forward is not working while calling action using $this->view->action in Zend

我正在使用$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中结束,那么转发就是你应该做的