@suhuxa1

Как использовать в сервис провайдере сессию в laravel?

Появилась необходимость вывести переменную с балансом юзера для всего view. Начал это делать через сервис провайдер в методе boot. Оказалось, что в сервис провайдере сессия не работает. Вернее там не отображается массив информации о юзере, хотя если вывести session('user') в любом другом файле - инфа выводится. Но в сервис провайдере показывает null. Как с этим бороться?

UPD: Решать проблему через создание middleware я не решился. Все же мид для одного, сервис провайдер для другого. Поэтому мне помог вот такой код:
view()->composer('*', function ($view)
        {
            $balance = User::select('balance')->where('login', session('user.login'))->first();
            $view->with('balance', $balance );
        });

Где 'balance' - переменная, уже доступная во view
  • Вопрос задан
  • 265 просмотров
Пригласить эксперта
Ответы на вопрос 2
Sanasol
@Sanasol Куратор тега Laravel
нельзя просто так взять и загуглить ошибку
@pantagruel964
Сделайте middleware и там расшаривайте
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы