【发布时间】:2018-09-15 21:09:35
【问题描述】:
我用 Laravel 设计了一个网站。现在我想为它添加新语言。我读了laravel document。这很好,但我有一个问题。假设我有一个显示产品详细信息的页面,所以我有一个像 mysite.com/product/id 这样的路由来获取产品的 id 并显示它。我在控制器中有一个方法,比如
public function showProduct($id){
...
}
如果我添加新 Language ,路线将更改为:mysite/en/product/id 现在我必须改变我的方法,因为现在有两个参数发送我的方法。像这样:
public function showProduct($lang,$id){
...
}
于是出现了两个问题:
- 我必须更改网站中的所有方法,这很耗时
- 我不需要方法中的语言参数,因为我通过中间件设置了 $locan 请注意,我不想从我的 URL 中删除例如 en(因为 SEO)
【问题讨论】:
-
或许可以通过显式注册您支持的语言路由来解决这个问题?
标签: laravel localization