Yii2 url 配置不工作

Yii2 url config not working

我正在使用 yii2,我希望 url 是这样的: 示例:后端。dev/ads/browse/city/london

我的代码是这样的(backend/config/main.php):

'urlManager' => [
        'enablePrettyUrl' => true,
        'showScriptName' => false,
        'rules' => [
            '<controller:\w+>/<city:\d+>' => '<controller>/view',
            '<controller:\w+>/<action:\w+>/<city:\d+>' => 
                               '<controller>/<action>'
        ],
    ],

而我的 link 是:

echo Html::a('<h4>'.$cities[$i].'</h4>', ['/ads/browse', 
             'city'=>$cities[$i]], ['class'=>'btn buttonCity']);

但是输出是这样的:backend.dev/ads/browse?city=london 我想 ?要消失,请帮助我。

\d+ 表示它需要数字但你给了 london.

改变

'<controller:\w+>/<action:\w+>/<city:\d+>' => '<controller>/<action>'

'<controller:\w+>/<action:\w+>/<city:\w+>' => '<controller>/<action>'

感谢@Bizely 我必须进行这些更改:

'<controller:\w+>/<action:\w+>/<city:\d+>' => '<controller>/<action>'

更改为:

'<controller:\w+>/<action:\w+>/<city:\w+>' => '<controller>/<action>'

我的粗心!