我一直在开发基于Yii框架的Web应用程序 .
我在尝试制作sef网址时遇到了麻烦 .
是)我有的:
- 配置已设置 .
'urlManager'=> array('urlFormat'=>'path','showScriptName'=> false,'rules'=> array(//规则转到此处))
- 这是用于测试的代码:
echo $this->createUrl('site/test', array('help'=>'me')
$this
- 是控制器 .
如果我'm living '规则' array in config empty I' m得到这个 /site/test/help/me
. 我期待这个 .
如果
'rules'=>array(
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
)
我得到的 /site/test?help=me
也是预期的 .
但如果
'rules'=>array(
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>/<help:\w+>' => '<controller>/<action>/<help>',
)
我还在收获 /site/test?help=me
. 我期望看到 /site/test/me
谁能帮助我?
提前致谢 .
1 回答
更改规则的顺序并删除
<help>
. 它将自动添加到操作中 . 所以你的规则应该是这样的:规则的顺序很重要 . 你需要先把最详细的一个 .
问候