【问题标题】:How to disable view renderer from a controller action helper ?如何从控制器操作助手禁用视图渲染器?
【发布时间】:2011-07-15 09:33:16
【问题描述】:

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

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

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

class Zend_Controller_Action_Helper_Ajaxrequest extends Zend_Controller_Action_Helper_Abstract{

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

【问题讨论】:

    标签: zend-framework controller action helper viewhelper


    【解决方案1】:

    viewRenderer 在您的示例中实际上是 action helper,而不是 view helper。

    要调用操作助手,请使用助手代理:

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

    如果你真的想调用 view helpers,你需要一个 view 实例。您可以从控制器中获取一个:

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

    【讨论】:

    • 您好@jani,我尝试在动作助手中调用视图助手,但您发布的代码没有成功,您能否尝试更好地解释用法?谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-28
    • 2015-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多