我是Yii的新手。我正在用PHP开发一个带有YII框架的系统。如何为不同的模块设置不同的布局?我希望模块A有接口A,模块B有接口B.但我所知道的是所有模块登录的接口登录都是相同的。有人可以给我一个灯吗?
更新
我找到了一种方法,包括:
$this->layout = $layout;
在渲染页面之前控制器内的动作功能。但是,我发现它并不像我需要重复这一行的每一个动作那样高效。有没有办法在config / main.php页面上进行设置?可能在这一部分:
'modules'=>array(
'gii'=>array(
'class'=>'system.gii.GiiModule',
'password'=>'123',
'generatorPaths' => array('bootstrap.gii'),
),
'admin',
'consultant',
'client',
),
答案 0 :(得分:1)
您可以在config
中为您的模块设置变量,如下所示:
'modules'=>array(
'gii'=>array(
'class'=>'system.gii.GiiModule',
'password'=>'123',
'generatorPaths' => array('bootstrap.gii'),
),
'admin' => array(
'layout' => 'your_layout' //The layout for this module
),
'consultant',
'client',
),
这样您就可以为每个模块实现默认布局。无需添加controller
方法或变量。
答案 1 :(得分:0)
试试这个:
class YourController extends Controller {
public $layout = 'your_layout';
}