yoyo0926
- yoyo0926 评论了教程 Url Rules 使用指南
第一条规则 ,如果加上,那么第二条规则 就不生效了
- yoyo0926 评论了教程 Url Rules 使用指南
这里还有一个问题 麻烦了:
'rules' => [ [ 'pattern' => 'product', 'route' => 'article/product', ], [ 'class' => common\core\UrlRuleWeb::class, 'pattern' => 'product_<filter_1:\d+>_<filter_4:\d+>_<filter_7:\d+>_<filter_12:\d+>_<page:\d+>', 'route' => 'article/product', 'suffix' => '',//自定义后缀 可选配置 'defaults' => [ 'filter_1' => 0, 'filter_4' => '0', 'filter_7' => 0, 'filter_12' => 0, 'page' => 1 ], ], //写法2 //... ],
- yoyo0926 评论了教程 Url Rules 使用指南
大神!!!赞一个!!!太实质了,找了好几天了 都没讲到这些
太感谢!!!
- yoyo0926 收藏了教程Url Rules 使用指南
核查源码发现,确实没法直接通过规则 设置 相关参数的默认值。
但是 设置 多条规则的方法是可行的测试规则(2.0.12 下测试可行) "site/test_<aa:\d+>_<bb:\d+>_<cc:.*>" => "site/index", "site/test_0_0_<cc:.*>" => "site/index",
可能是你用的版本比较老? 或者你可以 调整一下 规则的创建顺序,把包含默认值的规则放到前面。
如果还是不行,建议在 使用的地方 手动填充相关默认值,如
Url::to(['site/index', 'aa' => 0, 'bb' => 0, 'cc' => 123]);
谢谢 我发现了,规则是可以的,就是url::to它不起效果! 手动在浏览器里面添加,它是生效的
或者 我把0都去掉,规则 写成 product_<page:\d+> 这样子 也不能出现 product_2的路由,还是 ?page=2
- yoyo0926 2017-12-15 已签到连续签到2天,获得了10个金钱