urlmanager模块在yii2.0中不起作用

时间:2014-11-28 11:55:57

标签: php yii2

关于后端文件夹内的模块创建。示例我创建了一个模块名称为" api"。并且还为该模块创建了控制器。

这是我的urlmanager代码:

  'urlManager' => [
            'class' => 'yii\web\UrlManager',
            'enablePrettyUrl' => true,
            'rules' => [

                '<module:\w+>/<controller:\w+>/<action:\w+>'=>'<module>/<controller>/<action>',
                '<module:\w+><controller:\w+>/<action:update|delete>/<id:\d+>' => '<module>/<controller>/<action>',

            ],
        ]

当我访问关于模块的url作为&#34; api&#34; ,控制器为&#34;国家&#34;和行动作为&#34;创建&#34;

http://local2host.com/bootstrap/backend/web/index.php/api/country/create 它显示404 Not Found错误

我哪里出错了?

2 个答案:

答案 0 :(得分:2)

第二条规则永远不会有效,而且您不必定义规则,而正常规则也可以。所以这个

'urlManager' => [
    'class' => 'yii\web\UrlManager',
    'enablePrettyUrl' => true,
    'showScriptName' => false,
],

将使此链接/website.com/core/contact/index正常工作。

但我不确定为什么你的路线没有赶上第一条规则......很奇怪。它应该。

答案 1 :(得分:0)

晚了好,从来没有。

对于make模块,你需要在config中附加它:

'modules' => [
......
    'modulename' => [
        'class' => 'app\modules\modulename\Module',
    ],
......
],