yii2中单个控制器(模块)的漂亮URL

paw*_*i92 5 yii yii2 yii2-advanced-app yii2-basic-app

假设我的申请路径是: -

http://www.example.com/index.php?r=dashboard/event/view
Run Code Online (Sandbox Code Playgroud)

我创建了一个新的控制器,我想将URL更改为漂亮的URL.

新控制器的默认URL

http://www.example.com/index.php?r=newcontroller/view?id=23&name=urlpretty
Run Code Online (Sandbox Code Playgroud)

我想将上面的URL设置为漂亮的URL,例如

http://www.example.com/23/sampleprettyurl
Run Code Online (Sandbox Code Playgroud)

但我不想将完整的应用程序URL路径更改为漂亮的URL.我的其他控制器路径/ URL应该正常工作.

提前致谢

Mar*_*vix 0

我认为不可行,控制器名称必须在URL中,获取您需要配置的模块名称,然后urlManager:

    'urlManager'   => [
      'enablePrettyUrl'     => true,
      'showScriptName'      => false,
      'enableStrictParsing' => false,
      'rules'               => [
              'newcontroller/<id>/<name>'   => 'moduleAlias/newcontroller',
       ],
     ],
Run Code Online (Sandbox Code Playgroud)

然后在操作中您可以通过以下方式获取值Yii::$app->request->get('id');