使用模块时的Yii路由问题

时间:2017-11-20 14:15:47

标签: php yii routing yii-url-manager yii-routing

我想使用我的网址管理器链接那个链接。我的博客详情

http://example.com/yii-fremwork-install =>它给博客控制器细节方法

其中“yii-fremwork-install”是来自数据库的slu ..

并且也没有一个模块,我写了我的网址管理器

'rules' => array(
                '<slug:.+>' => 'users/details',
                '<controller:\w+>/<id:\d+>' => '<controller>/view',
                '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
                '<controller:\w+>/<action:\w+>' => '<controller>/<action>',

            ),

但是当我使用我的管理模块时

http://example.com/admin  它转到用户/细节控制器锄头使用此

有人可以提出解决这个问题的想法。

1 个答案:

答案 0 :(得分:0)

这里的问题是<slug:.+>用于每条路线。

您必须在rules数组中手动​​定义所有控制器并首先定义它们

像这样:

'rules' => array(
            '<controller:admin|default|item>' => '<controller>',
            '<controller:admin|default|item>/<id:\d+>' => '<controller>/view',
            '<controller:admin|default|item>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
            '<controller:admin|default|item>/<action:\w+>' => '<controller>/<action>',
            '<slug:.+>' => 'users/details',
        ),

你的3个其他控制器(例如)AdminControllerDefaultControllerItemController