Url rewriting 如何在yii2中从URL隐藏ID-s

Url rewriting 如何在yii2中从URL隐藏ID-s,url-rewriting,yii2,Url Rewriting,Yii2,我有这样一条规则: 'home/<id:\d+>/<slug>' => 'home/view', 'home/'=>'home/view', 它将生成如下url:www.example.com/123/Some title 但我想知道,如果URL中没有显示ID,那么它会变成: www.example.com/Some title 这可能吗?如何做到 另外,我仍然需要执行$\u GET['id']以按id获取文章,如果可能的话,我只想从URL中隐藏它。只需使用'h

我有这样一条规则:

'home/<id:\d+>/<slug>' => 'home/view',
'home/'=>'home/view',
它将生成如下url:
www.example.com/123/Some title

但我想知道,如果URL中没有显示ID,那么它会变成:

www.example.com/Some title

这可能吗?如何做到


另外,我仍然需要执行
$\u GET['id']
以按id获取文章,如果可能的话,我只想从URL中隐藏它。

只需使用
'home/'=>'home/view'
。Slug现在将作为参数传递给您的view操作。但我仍然需要使用ID来获取文章,我无法通过Slug从数据库中获取它。这样行吗?如果
slug
不允许您检索唯一记录,那么您将不得不发送
id
。这是你如何设计东西的问题。谢谢,我认为有一些方法可以使用ID,但是要隐藏它,你必须以某种方式发送它!唯一的其他方法是在页面上有一个表单,并通过
post
请求提交id,这样做只需使用
“home/”=>“home/view”
。Slug现在将作为参数传递给您的view操作。但我仍然需要使用ID来获取文章,我无法通过Slug从数据库中获取它。这样行吗?如果
slug
不允许您检索唯一记录,那么您将不得不发送
id
。这是你如何设计东西的问题。谢谢,我认为有一些方法可以使用ID,但是要隐藏它,你必须以某种方式发送它!唯一的其他方法是在页面上有一个表单,并通过
post
请求提交id,这将完成iit