我有这个网址:
博客/ 74 /标题新闻
但我想要没有ID的网址:
博客/标题新闻
我的规则如下:
'rules' => [
'blog/<id>/<title>' => 'blog/details/',
],
有可能吗?
答案 0 :(得分:0)
如果您只需要一个新闻的网址,则可以通过UrlManager::$rules
config解决此问题:
'rules' => [
[
'pattern' => 'blog/<id:\d+>/title-news',
'route' => 'blog/details',
'defaults' => ['id' => 74, 'title' => 'title-news'],
],
// ...other rules...
]
这将更改ID为74
的新闻的网址。
如果您需要对所有网址执行此操作,首先您需要确保在网址中使用的所有title
都是唯一的。然后配置规则:
'rules' => [
'blog/<title>' => 'blog/details',
]
在为新闻创建网址时删除id
参数 - 它应如下所示:
Url::to(['blog/details', 'title' => $model->title]);