【问题标题】:Yii2 how to rewrite url without controller nameYii2如何在没有控制器名称的情况下重写url
【发布时间】:2021-02-09 06:12:45
【问题描述】:

我正在重写我的 yii2 网站 url。在我的配置文件中我添加了

'<category_name>-<controller>-<category_id>'=>'<controller>/index'

并且在 url 中我只是传递了类似的参数

<?=Url::to(['shop/index','category_id'=>1,'category_name'=>'clothes'])?>

我的网址是这样的

https://example.com/clothes-shop-1

这就是我得到的。但我需要类似的东西

https://example.com/clothes-1

为此,我只是像这样更改了规则

'<category_name>-<category_id>'=>'<controller>/index'

但是那个时候重写不起作用。如何从该 url 中删除控制器名称

【问题讨论】:

    标签: url-rewriting yii2


    【解决方案1】:

    系统如何知道,需要什么控制器来处理 URL?在第一个例子中

    '<category_name>-<controller>-<category_id>'=>'<controller>/index'
    

    有一个控制器名称。秒

    '<category_name>-<category_id>'=>'<controller>/index'
    

    没有控制器名称。 所以你需要告诉它。试试

    '<category_name>-<category_id>'=>'shop/index'
    

    【讨论】:

    • @AbhijithAbhi,请将答案标记为正确。
    猜你喜欢
    • 2021-08-29
    • 2014-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-14
    • 2011-09-28
    • 2012-08-28
    • 2019-06-21
    相关资源
    最近更新 更多