【发布时间】:2014-06-10 04:58:31
【问题描述】:
我正在使用 Yii 框架开发一个 Web 应用程序,但在 url 重写方面遇到了一点问题。
问题在于下面代码中的最后一条规则。应该把localhost/app/category/some-friendly-url-category-name(这部分会出现在浏览器中)变成localhost/app/category/view/id/some-friendly-url-category-name
当类别名称只有一个词时,它可以正常工作,例如:vehicles。 但是当它有不止一个词时它就不起作用了,比如:children-stuff
'urlManager'=>array(
'showScriptName' => false,
'urlFormat'=>'path',
'rules'=>array(
'<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'category/<id:[A-Za-z0-9_\-]+>' => 'category/view',
),
),
【问题讨论】:
-
一个词以上实际抛出的错误。
-
只是它可以找到动作。但正如 Samuel Liew 所说,这只是规则的立场。具体规则必须高于一般规则。
标签: php regex yii url-rewriting