我有一个管理模块,我正用于后端用户管理等...
我希望将“权利”扩展程序嵌套在此管理模块下,并且可以使用mysite.com/index.php?r=admin/rights
显然我需要在父节点中声明子模块,所以在AdminModule init下,我设置了:
$this->setModules(array(
'rights'=>array(
'install'=>true, // rights - Enables the installer
'baseUrl'=>'/admin/rights',
'debug'=>true,
),
));
我也尝试从AdminModule init导入:(对此无能为力)
$this->setImport(array(
'admin.models.*',
'admin.components.*',
'admin.modules.rights.*',
'admin.modules.rights.components.*',
));
我也试过在main.php配置中声明模块:
'admin'=>array(
'modules'=>array(
'rights'=>array(
'install'=>true, // rights - Enables the installer
'baseUrl'=>'/admin/rights',
'debug'=>true,
),
),
),
甚至在那里导入它:
'import'=>array(
'application.models.*',
'application.components.*',
'application.modules.admin.*',
'application.modules.admin.modules.rights.*', // rights
'application.modules.admin.modules.rights.components.*', // rights
),
Anywho,无论我到目前为止尝试过什么,我都无法进入权限模块。在尝试获取管理员/权限时,它会给我Unable to resolve the request "admin/rights".
。
扩展程序在?r=rights
处作为非嵌套模块正常工作。有任何想法吗?在处理嵌套模块时,我没有找到很多实际代码的例子。
答案 0 :(得分:0)
问题可能是缺失的路线吗?
尝试添加以下内容:
<module:\w+>/<controller:\w+>/<action:\w+>'=>'<module>/<controller>/<action>
答案 1 :(得分:0)
我猜你有多个rights
模块。要使用特定的(从“更深层次”层次结构),您必须声明其类。这样的事情:
'admin'=>array(
'modules'=>array(
'rights'=>array(
'class' => 'application.modules.admin.modules.rights.RightsModule'
),
),
),