2012-03-27 65 views
2

有沒有什麼方法可以將其添加到我的插件?Zend Framework setNoRender插入

$this->_helper->viewRenderer->setNoRender(); 
+2

什麼樣的插件?這麼做的意義何在? – Liyali 2012-03-27 11:09:25

回答

3

是的,你應該能夠使用靜態方法調用的任何地方做:

Zend_Controller_Action_HelperBroker::getStaticHelper("ViewRenderer"); 
+0

如何設置NoRender? 是否這樣? '$ viewRenderer = Zend_Controller_Action_HelperBroker :: getStaticHelper(「ViewRenderer」); $ viewRenderer-> setNoRender();' – rjmcb 2012-03-28 01:20:50

+0

是的,我會這樣說。它不工作嗎? – bububaba 2012-03-28 07:13:04

+0

它沒有工作.. – rjmcb 2012-03-29 00:41:03

0

您需要:

Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer')->setNeverRender(true);

EDIT(從danielhanly.com要求) :

如果您想要編碼:

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

在插件(preDispatch()法)工作,你需要將其更改爲:

Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer')->setNeverRender(true); 

它類似於rjmcb方法,但不是setNoRender()(不工作),你必須使用setNeverRender(true)

+0

請解釋這一點,而不是隻傾銷一行代碼。它會幫助未來的遊客,如果你這樣做:) – 2013-12-19 14:39:38