В настоящее время моя система использует 2 языка - английский и немецкий. Моя цель состоит в том, чтобы просматривать следующие маршруты, переключаясь между указанным языком -
base-url/contact - for english
base-url/kontakte - for german
В настоящее время у меня есть требуемый файл маршрутов в папке ресурсов, куда я поместил необходимые переведенные слова
resources/lang/en/routes.php
resources/lang/de/routes.php
В web.php у меня сейчас -
Route::get(r('contact'), 'TestController@index')->name('contact');
с помощью вспомогательной функции r () Я получаю активное переведенное слово.
В моей пользовательской таблице есть колонка локали, в которой я храню активный язык при обновлении языка из профиля пользователя -
\Session::put('locale', $request->input('locale'));
Я создал промежуточное программное обеспечение Localization, где я в настоящее время -
public function handle($request, Closure $next)
{
if ( \Session::has('locale')) {
\App::setLocale(\Session::get('locale'));
Carbon::setLocale(\Session::get('locale'));
}
return $next($request);
}
В настоящее время код отлично работает для переведенного слова. но переведенные маршруты не работают. всякий раз, когда я переключаюсь и посещаю любой маршрут, это выдает ошибку 404. но если я перезапущу сервер с помощью PHP artisan serve, он будет работать с измененным языком.
Так как решить проблему?