我是Zend Framework的新手。第1件事,我想在视图中将.phtml
延伸更改为.php
。
经过研究,我发现这个代码在不同控制器的init方法中有效:
$this->getHelper('viewRenderer')->setViewSuffix('php');
问题是我必须在每个控制器中重复该代码,这是不好的,并且违背了使用框架的目的。
我可以将Zend_Controller_Action
子类化为一个基本控制器,其中包含所有其他控制器可以继承的共享代码,但据我所知,这不是最好的做法。
如果不对Zend_Controller_Action
类进行子类化并且不使用任何插件或Action助手,我如何实现共享代码
提前致谢。
答案 0 :(得分:1)
刚想出来......不需要任何基础控制器。
在bootstap中,我写了这段代码:
protected function _initViewSuffix() {
$this->bootstrap('View');
$view = $this->getResource('View');
$viewRenderer = new Zend_Controller_Action_Helper_ViewRenderer($view);
$viewRenderer->setViewSuffix('php');
Zend_Controller_Action_HelperBroker::addHelper($viewRenderer);
}
然后在Application.ini中,我添加了这一行:
resources.view = []
现在可行。