yii2路由-将参数传递到规则中的路由
当用户访问yii2路由-将参数传递到规则中的路由,yii2,url-routing,Yii2,Url Routing,当用户访问domain/page时,我需要将它们路由到controller/action/100。 我不想通过URL传递任何参数,但想将其添加到URL规则中 我将下面的代码添加到我的配置文件中 'urlManager' => [ 'rules' => [ 'login' => 'site/login', // working 'about' => 'cms/page/10' // Not Working 'abo
domain/page
时,我需要将它们路由到controller/action/100
。
我不想通过URL传递任何参数,但想将其添加到URL规则中
我将下面的代码添加到我的配置文件中
'urlManager' => [
'rules' => [
'login' => 'site/login', // working
'about' => 'cms/page/10' // Not Working
'about' => 'cms/page?id=10' // Not Working
],
],
第一条规则是工作正常
我可以在url规则中传递路由的参数吗?您需要明确使用和声明规则:
'urlManager' => [
'rules' => [
'login' => 'site/login',
[
'pattern' => 'about',
'route' => 'cms/page',
'defaults' => ['id' => 10],
]
],
],
如果希望在使用UrlManager创建URL时防止转换,请将'mode'=>\yii\web\UrlRule::PARSING_ONLY
添加到此规则中(例如URL::to()
使用UrlManager及其规则,并以相反方向工作,即URL::to(['cms/page',id'=>10])
将生成一个关于的链接
也考虑在Web服务器上配置重定向。