php - yii 不同级别用户的不同界面布局

标签 php user-interface layout yii module

我是 Yii 的新手。我正在用 PHP 开发一个带有 YII 框架的系统。如何为不同的模块设置不同的布局?我希望模块 A 具有接口(interface) A,模块 B 具有接口(interface) B。但我所知道的是,接口(interface)登录对于所有模块登录都是相同的。有人可以给我一盏灯吗?

更新:

我找到了一种方法,包括:

$this->layout = $layout;

在呈现页面之前 Controller 内部的 Action 函数。但是,我发现它的效率不如我需要重复该行的每个 Action 。有什么办法可以在config/main.php页面上进行设置吗?可能在这部分:

'modules'=>array(
     'gii'=>array(
        'class'=>'system.gii.GiiModule',
        'password'=>'123',
        'generatorPaths' => array('bootstrap.gii'),
     ),          

     'admin',
     'consultant',
     'client',
),

最佳答案

您可以像这样在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 方法或变量。

有关更多信息,请参阅文档:herehere

关于php - yii 不同级别用户的不同界面布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30389587/

相关文章:

java - JTextField key listener 粘贴后落后一个

java - Android GridLayout 获取行/列

php - Laravel-如何将作业从一个Redis队列移至另一Redis队列?

PHP PDO 多表连接

matlab - 如何更改 MATLAB 图工具栏上的按钮图标? (2014b)

css - Box-Sizing 似乎并没有像我期望的那样尊重填充

python - PyQt5 QWidget.setGeometry() 不适用于 QLabel

php - 多对多 vs 一行

php - 选择html表单后显示mysql数据

java - 在 JPanel 上绘制椭圆时遇到问题