Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 13.11.2020 17:53:33

Как переключить язык на сайте?

Читаю инструкцию на laravel.com

Создал языковые файлы, прописал в web.php такой маршрут

Route::get('locale/{locale}', function ($locale) {
    if (! in_array($locale, ['en', 'ru', 'fr'])) {
        abort(400);
    }

    App::setLocale($locale);

    return view('dashboard');
});

В шаблоне страницы dashboard.blade.php прописал


<a href="/locale/en" class="dropdown-item" onclick="/*chooseLanguage('en')*/">
                                <?= 'en' === app()->getLocale() ? '<i class="fas fa-check"></i>' : '' ?>
                                English
                            </a>
                            <a href="/locale/fr" class="dropdown-item" onclick="/*chooseLanguage('fr')*/">
                                <?= 'fr' === app()->getLocale() ? '<i class="fas fa-check"></i>' : '' ?>
                                Français
                            </a>
                            <a href="/locale/ru" class="dropdown-item" onclick="/*chooseLanguage('ru')*/">
                                <?= 'ru' === app()->getLocale() ? '<i class="fas fa-check"></i>' : '' ?>
                                Русский
                            </a>

Теперь по этим ссылкам кликаю, вроде переключается. Однако, когда потом перехожу на любую другую страницу, сбрасывается в язык по умолчанию.
Как правильно сделать?

Не в сети

#2 21.11.2020 15:04:59

stsepelin
Откуда: Estonia
Сообщений: 43

Re: Как переключить язык на сайте?

Сохратите язык в session и затем через middleware применяйте выбраный язык.

Не в сети

Подвал раздела