Не работает смена языка в laravel 5.3?

Ожидается что при нажатии на ссылку во вьюхе произойдет переключение языка с русского на английский (если установлен русский) и наоборот (если установлен английский).

5c848fdac4dd2221438836.png

Но этого не происходит. Язык не меняется.
Вьюха:
<html>
<body>
<a href="{{route('change_locale', trans('country.others.locale'))}}">@lang('country.others.change_locale')</a>
</body>
</html>


Роут:
Route::get('locale/{locale}', 'SystemsController@changeLocale')->name('change_locale');


Контроллер:
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\App;

class SystemsController extends Controller
{
    public function changeLocale($locale)
    {
        if (in_array($locale, ['ru', 'en'])) {
            session()->put('locale', $locale);
            App::setLocale(session('locale'));

        }
        return redirect()->back();
    }
}


en/country.php
<?php

return [
    'form' => [
        'description' => "Enter new countries name",
        'send' => 'Send'
    ],
    'others' => [
        'change_locale' => 'Change language',
        'locale' => 'ru'
    ]

];


ru/country.php
<?php
return [
    'form' => [
        'description' => 'Введите название новой страны',
        'send' => 'Отправить',
    ],
    'others' => [
        'change_locale' => 'Сменить язык',
        'locale' => 'en'
    ]

];
  • Вопрос задан
  • 293 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы