Yii2 有没有办法在YII框架中有条件地触发urlManager
我有以下代码-Yii2 有没有办法在YII框架中有条件地触发urlManager,yii2,conditional,yii-url-manager,Yii2,Conditional,Yii Url Manager,我有以下代码- 'urlManager'=>array( 'urlFormat'=>'path', //'showScriptName'=>false, //'caseSensitive'=>false, 'rules'=>array( ''=>'site/home', 'logout'=>'si
'urlManager'=>array(
'urlFormat'=>'path',
//'showScriptName'=>false,
//'caseSensitive'=>false,
'rules'=>array(
''=>'site/home',
'logout'=>'site/logout',
'login' =>'site/login',
'page/about' => 'page/show/id/1',
'<cat0:[a-zA-Z\-0-9]+>/<cat1:[a-zA-Z\-0-9]+>/<name:[a-zA-Z\-0-9]+>' => 'product/single',
'<cat0:[a-zA-Z\-0-9]+>/<cat1:[a-zA-Z\-0-9]+>' => 'product/products',
'<cat0:[a-zA-Z\-0-9 ]+>' => 'product/subcategories',
),
),
yi认为它是CAT0和CAT1,因此它转发给我<代码>产品/产品<代码>控制器,使用<代码> $$GET('CAT0')=站点< /代码>和<代码> $$GET [ 'CAT1′] =联系< /代码> .<
有什么出路吗?这是错误的。你的规则是:
any_word/any_word
将转到product/products
i、 e.site/contact
将转到product/products
所以试试这个:products/'=>product/products',
现在products/cat1/cat2
将转到/products/products
更多信息请阅读本节:这是错误的。你的规则是:
any_word/any_word
将转到product/products
i、 e.site/contact
将转到product/products
所以试试这个:products/'=>product/products',
现在products/cat1/cat2
将转到/products/products
要了解更多信息,请阅读本节:正如@zakrzu建议的那样,要么为动态规则使用前缀,要么在动态规则之前添加所有静态规则。。因为图案是一样的,我会的。谢谢@zakrzu建议为动态规则使用前缀,或者在动态规则之前添加所有静态规则。。因为图案是一样的,我会的。谢谢,谢谢。这对我很有帮助,谢谢你。这对我很有帮助
/site/contact/