Yii的网址管理2

KB9*_*KB9 9 php yii yii2

我有这个网址

http://example.com/index.php/controller_name/action_name?queryString=123
Run Code Online (Sandbox Code Playgroud)

这个网址工作正常但是当我尝试使用像旧版Yii中的queryString时

http://example.com/index.php/controller_name/action_name/queryString/123
Run Code Online (Sandbox Code Playgroud)

我收到"无法解决请求"错误.

我已经在配置文件中启用了prettyurl,以下网址正在运行

 http://example.com/index.php/controller_name/action_name.
Run Code Online (Sandbox Code Playgroud)

我的配置看起来像:

'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>',
        ],
    ],
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

Ale*_*lex 10

遗憾的是,此功能未迁移到Yii2,您仍可以手动定义此类规则

'books/view/queryString/<queryString:\w+>' => 'books/view',
Run Code Online (Sandbox Code Playgroud)

github与此问题的链接

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

Sam Dark回答