我正在使用最新的Laravel 5.4。我的网站配置为使用德语和英语。例如,我有一个德语登录页面:
http://localhost/de/login
和英语:
http://localhost/en/login
我所做的是创建了一个语言中间件,它查看URI的第一段('en'或'de'),并根据第一个段值设置正确的app()->setLocale()
。我正在努力的是如何为这些路线生成链接(正确/最佳实践)。我应该在刀片模板中使用什么功能来生成此类链接。我试过了route('login', app()->getLocale())
,但它给了我这样的东西:http://localhost/en/login?de
。为什么会这样?我应该使用什么功能来生成指向命名路由和未命名路由的链接?
谢谢, ž
答案 0 :(得分:1)
试试这个:
Route::post('page/{locale?}', 'PageController@someMethod')->where(['locale' => 'de|en|es|fr|it|nl']);
看,如果有效!