我在laravel 5.1中使用了这种方式进行本地化,效果很好。现在我面对的是翻译文本在laravel 5.5中无法与return redirect()->back()
一起使用。
Route::get('lang/{locale}', function ($locale) {
\App::setLocale($locale);
\Session::put('langKey', $locale);
// return redirect()->back();
return view('welcome');
});
如果我使用return view('welcome')
,效果很好,但不适用于redirect()
。
welcome.blade.php 中的代码是
<ul>
@if(App::isLocale('en'))
<li><a href="{{url('/lang/my')}}">ျမန္မာ</a></li>
@else
<li><a href="{{url('/lang/en')}}">English</a></li>
@endif
</ul>
App -> {{ app()->getLocale() }}
<br>
Session -> {{Session::get('langKey')}}
<br>
@lang('test.home')
使用重定向返回的屏幕截图:
使用返回视图截屏-1:
使用返回视图截屏-2: