如何从控制器动作助手中禁用视图渲染器?

时间:2011-07-15 09:33:17

标签: zend-framework controller action helper viewhelper

在控制器中,我可以像这样调用viewRenderer helper:

$this->_helper->viewRenderer->setNoRender(true);

如何在控制器动作助手中调用viewRenderer? 假设我有一个Controller动作助手:

class Zend_Controller_Action_Helper_Ajaxrequest extends Zend_Controller_Action_Helper_Abstract{

   public function test(){
       //what I should do here
   }
}

1 个答案:

答案 0 :(得分:7)

您的示例中的

viewRenderer实际上是动作助手,而不是视图助手。

要调用操作助手,请使用助手经纪人:

$helper = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer');
$helper->setNoRender(true);

如果您确实想要调用查看助手,则需要一个视图实例。你可以从控制器那里得到一个:

$controller = $this->getActionController();

//call the url view helper
$controller->view->url(...);