【问题标题】:url management in Yii 2Yii 2 中的 url 管理
【发布时间】:2014-05-22 16:51:48
【问题描述】:

我有这个网址

http://example.com/index.php/controller_name/action_name?queryString=123

这个 url 工作正常,但是当我尝试像在旧版本的 Yii 中一样使用 queryString 时

http://example.com/index.php/controller_name/action_name/queryString/123

我收到 “无法解决请求” 错误。

我已经在我的配置文件中启用了 prettyurl,并且下面的 url 正在工作

 http://example.com/index.php/controller_name/action_name.

我的配置如下:

'urlManager' => [
        'class' => 'yii\web\UrlManager',
        'enablePrettyUrl' => true,
        'showScriptName' => false,
        'rules' => [
            '<controller:\w+>/<id:\d+>' => '<controller>/view',
            '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
            '<controller:\w+>/<action:\w+>' => '<controller>/<action>',
            'module/<module:\w+>/<controller:\w+>/<action:\w+>' => '<module>/<controller>/<action>',
        ],
    ],

我错过了什么?

【问题讨论】:

    标签: php yii yii2


    【解决方案1】:

    很遗憾这个功能没有迁移到 Yii2,你仍然可以手动定义这样的规则

    'books/view/queryString/<queryString:\w+>' => 'books/view',
    

    Link on github with this issue

    由于许多客户端 API 和 Oauth 服务器在没有编码的情况下无法工作

    Sam Dark answer

    【讨论】:

    • Alex 你知道这是否计划在未来实施?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多