在zend中为bootstrap中的模块设置布局文件

时间:2012-07-09 07:50:36

标签: zend-framework zend-layout

我的应用程序结构:

application
  ->configs
  ->layouts
     ->scripts
        ->admin.phtml
        ->site.phtml
  ->modules
     ->admin(controllers, models, views)
       ->Bootstrap.php
     ->default(controller,models,views) 
       ->Bootstrap.php

我已将application.ini中的默认布局设置为:

resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"
resources.layout.layout = "site"

我有两个模块:admin和default。如何为管理模块设置布局文件(admin.phtml)?我想从admin模块的Bootstrap.php文件更改布局? 或者建议我哪种方式最简单?

1 个答案:

答案 0 :(得分:1)

将此内容写入管理文件夹中的Bootstrap.php

protected function _initLayout()
{
   $layout = Zend_Layout::getMvcInstance();
   $layout->setLayout('admin');
}

通过以上两行,您还可以更改控制器和插件中的布局。 如果要在视图中更改它,可以这样做:

<?php $this->layout()->setLayout('admin'); // set alternate layout ?>