Сессия Ларавела теряетсяPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Сессия Ларавела теряется

Сообщение Anonymous »

Я использую Laravel 11 для небольшого проекта, и я пытаюсь справиться с интернационализацией. Приводит пользователя к следующему коду в моем файле web.php в моем каталоге маршрутов: < /p>
Route::get('/lang/{locale}', function ($locale) {
if (in_array($locale, ['en', 'fr'])) {
session(['locale' => $locale]);
App::setLocale($locale);
}
return redirect()->back();
});
< /code>
Тогда у меня также настроено промежуточное программное обеспечение, чтобы помочь с интернационализацией. Похоже: < /p>
public function handle(Request $request, Closure $next): Response
{
if (session()->has('locale')) {
App::setLocale(session('locale'));
}
else{
App::setLocale(config('app.locale'));
}
return $next($request);
}
< /code>
Проблема, которую я вижу, заключается в том, что когда я нажимаю на вариант языка в раскрывающемся списке, и запрос проходит через маршрут. Я не вижу никаких изменений в сессии. Если маршрут перенаправляет обратно, сеанс не установлен? Я пробовал сбросить все переменные сеанса в промежуточное программное обеспечение, и это пусто. В сессии нет собственности «Локаль». Куда я ошибаюсь?>

Подробнее здесь: https://stackoverflow.com/questions/794 ... tting-lost
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»