Я реализовал многоязыковость через промежуточное ПО и маршруты.
Middleware Localization.php выглядит так:
public function handle(Request $request, Closure $next)
{
$locale = $request->segment(1);
if(empty($locale)) {
return redirect()->to('/' . app()->getLocale());
}
if(in_array($locale, ['en','it'])) {
App::setLocale($locale);
$request->except(0);
}
return $next($request);
}
И в моем web.php у меня есть:
Route::get('locale/{locale}', function ($locale){
\Session::put('locale', $locale);
$path = Route::getCurrentRoute()->getPath();
return redirect($path);
})->name('langroute');
В лезвии я использую это так:
<a class="dropdown-item" href="{{ url('/en') }}">
Как я могу перенаправить обратно на ту же страницу после перехода на другой язык?
href
. Я пробовал с{{route(Route::currentRouteName(), 'en') }}
, но это выдает ошибку с параметрами на маршрутах страниц, для которых требуются параметры. - person Marinario Agalliu   schedule 12.01.2021->withInput()
, который включает предыдущую строку запроса. Может быть, это может помочь. - person Taha Paksu   schedule 12.01.2021