Я использую хелперныйКак я могу изменить язык ошибок в Laravel 5.1 динамически
приложения() -> Setlocale (сессия («языки»));
Однако, я могу изменить языки взглядов, но языки ошибок все еще продолжает чтение
\ Config \ app.php локали => 'ы'
Это означает, что всегда показывать один и тот же язык.
Как я могу изменить его также динамически?
Проблема в том, что частичный вид, что печатает ошибку всегда печатается на том же языке.
Вот код, который у меня есть.
\ Resources \ вид \ layout.blade.php
@lang('messages.project')
<ul class="nav navbar-nav navbar-right">
<li><a href="{{ url('lang', ['en']) }}">En</a></li>
<li><a href="{{ url('lang', ['es']) }}">Es</a></li>
</ul>
\ приложение \ Http \ routes.php
Route::get('lang/{lang}', '[email protected]')->where([ 'lang' => 'en|es']);
Route::group(['middleware' => ['web']], function() {
Route::get('notes', '[email protected]');
Route::get('notes/create', '[email protected]');
});
\ приложение \ Http \ Контроллеры \ NotesController. php
public function changeLang($lang)
{
session(['lang' => $lang]);
return Redirect::back();
}
\ приложение \ Http \ Middleware \ LangMiddleware.php
public function handle($request, Closure $next)
{
if (!empty(session('lang'))) {
app()->setLocale(session('lang'));
}
return $next($request);
}
\ ресурсы \ Views \ обертоны \ errors.blade.php
<ul>
@foreach($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
Как вы относитесь к *** dynamic **? Вы имеете в виду без перезагрузки страницы с помощью XMLHttpRequest, что-то еще? Пожалуйста, определите параметры этого изменения. – Nicholas
Привет, Николас. Речь идет не о запросе Ajax. У меня есть две ссылки: routes.php Route :: get ('lang/{lang}', 'NotesController @ changeLang') -> где (['lang' => 'en | es']); – juanmiguel431
Ни скриншот, ни код не показывают, где происходит изменение локали. Кроме того, ваш вопрос не объясняет, где в коде или приложении вы хотите изменить локаль. – Nicholas