[英]YII friendly SEO url
我正在为这个问题而苦苦挣扎,没有找到合适的答案。
我希望my_site / user / 1成为my_site / user / user_name
我的urlManager看起来像这样:
'urlManager' => array(
'urlFormat' => 'path',
'rules' => array(
'user/<username:\w+>'=>'user/view',
'<controller:\w+>/<id:\d+>'=>'<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
),
'showScriptName' => false,
),
用户控制器:
public function actionView($username)
{
$this->render('view', array(
'model' => $this->loadModel($username),
));
}
当我点击/ user / admin时,它会将我重定向到actionView而不是从我的控制器重定向到actionAdmin,并且我有多个此类操作,例如创建,删除等。 我如何避免这种情况? 还有其他选择吗?
谢谢。
urlManager尝试将url与控制器和动作进行匹配。 第一部分
'user/<username:\w+>'=>'user/view',
已与用户控制器匹配,并在下一部分匹配它以查找包含单词的任何字符串,然后将用户发送给用户/视图
我建议将user/<username>
更改为manage-user/<username>
或my-account/<username>
,类似这样。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.