我已尝试阅读此处发现的问题:Zend 框架中的模块配置和布局配置 它被描述为我需要了解的有关布局的所有信息 - 但是 - 恐怕我发现它有点难以理解。
我有许多 Zend 控制器:
class FirstController extends Zend_Controller_Action {
public function init() { /* stuff */ }
public function indexAction() { /* stuff */ }
public function indexBrowse() { /* stuff */ }
}
class SecondController extends Zend_Controller_Action {
// stuff
}
class ThirdController extends Zend_Controller_Action {
// stuff
}
我需要他们有以下安排。
- FirstController 和 Second Controller 共享一个标头
- FirstController - indexAction 和 browseAction 共享一个额外的标头
- Thirdcontroller - 有它自己的标题或可能“没有标题”(对于 ajax)
就目前而言,我在view/script/<actionname>.phtml
文件http://framework.zend.com/manual/en/zend.layout.quickstart.html中得到了巨大的复制
有更多信息,但我无法找到将这一切带回家的关键信息。
从上面的第一个文档中,我猜我的application.ini
文件中包含以下内容
resources.layout.layout = "layout"
resources.layout.layoutPath = APPLICATION_PATH "/layouts"
但是我应该创建一个名为“Layouts”的文件夹还是应该使用某种views/common
文件夹?然后调用文件layout.php
吗?
然后,在里面layout.php
我是否正确理解
<div id="content"><?php echo $this->layout()->content ?></div>
会渲染单个动作的PHTML
文件吗?和
public function anotherAction() {
$this->_helper->layout->setLayout('foobaz');
}
是否会使整个操作使用不同的布局文件(布局文件夹中名为“foobaz.php”的文件)?
感谢您花时间为我解决这个问题。