比如我的文章列表
'category/<cid:\d+>-<page:\d>' => 'posts/list'
这样写的话,如果page为空的时候是无法匹配的,yii自带的分页助手第一页的链接的page参数是没有的,所以第一页总是无法匹配这条route,能不能在page这个参数没有值的时候,设置一个默认值(比如说1)呢?
个人感觉现在的urlManager没有Zend里面的router好用
是我没找到设置的地方还是就是没这个功能呢?
比如我的文章列表
'category/<cid:\d+>-<page:\d>' => 'posts/list'
这样写的话,如果page为空的时候是无法匹配的,yii自带的分页助手第一页的链接的page参数是没有的,所以第一页总是无法匹配这条route,能不能在page这个参数没有值的时候,设置一个默认值(比如说1)呢?
个人感觉现在的urlManager没有Zend里面的router好用
是我没找到设置的地方还是就是没这个功能呢?
你需要再添加一条规则:
'category/<cid:\d+>' => 'posts/list'
yii的urlManager没Zend好用是可能的,因为yii支持的是双向路由,而zend的是单向的(zend的路由其实可以由apache rewrite rule替代)。
感谢qiang
只是这样感觉路由基本上都得写两条才行,不知道双倍的url路由会对性能影响很大吗?30条以内
zend的确实是可以用rewrite代替
的确是这样。不过如果你有其它类似的规则,你可以考虑把它们合并,例如:
'<controller:(post|product|user)>/<id:\d+>-<page:\d+>' => '<controller>/list',
'<controller:(post|product|user)>/<id:\d+>' => '<controller>/list'
ok,已经搞定,再次感谢