【发布时间】:2017-02-28 20:50:00
【问题描述】:
我使用 laravel 5.3 和 setLocale 不工作
如果我在路线中使用setLocate -> 不起作用,例如:
Route::get('loc/{locale?}', function($locale) {
App::setLocale($locale);
return redirect()->back();});
但是,如果我在文件路径的其他地方使用它,它就可以工作! 我在代码中提到的表示:
$locale = 'en';
App::setLocale($locale);
我使用家庭控制器:
Route::get('loc/{locale}', 'HomeController@language');
在文件主控制器中:
public function language($locale)
{
App::setLocale($locale);
return redirect()->back();
}
这个方法也不行
【问题讨论】:
-
您有错误吗?如果没有,你可以在你的控制器中设置区域设置后显示
dd(app()->getLocale())吗? -
不,我没有错误。如果我在
setLocate之后使用dd(app()->getLocale()),我会看到-“en”或“ru”这就是我选择的,但我的语言不会在网站上改变。如果我在文件app.php中更改语言 -> 好,我的语言变化
标签: laravel localization routes