Установка значения сеанса в файле blade.php laravel 5.4 - PullRequest
0 голосов
/ 13 ноября 2018

Я работаю в проекте laravel 5.4 и хочу установить и получить значение сеанса с файлом laravel view show.blade.php. Есть ли способ добиться этого.

1 Ответ

0 голосов
/ 13 ноября 2018

Не следует устанавливать значение сеанса в блейд-файле. Это плохой подход (отнеси его к контроллеру)

но если вы все еще хотите это сделать

{{ session()->put('my_test_key','my_value')}}

и вы можете получить его по

{{ session()->get('my_test_key') }}

Если вы посмотрите, как представление отображается в php / laravel, то имеет смысл не помещать что-либо в сеанс с использованием представления.

Внутри контроллера при визуализации:

return view('show.blade.php',compact('my_var'));

на этом этапе ваше значение будет занесено в сессию перед возвратом скомпилированного представления

если мы присвоим значение сеансу, используя контроллер, а не вид, который будет выглядеть:

session()->put('my_test_key','my_value') // value is put to session before compiling the view 
return view('show.blade.php',compact('my_value'));

Расчеты являются обязанностью Контроллера, а не Представления, и, на первый взгляд, обращаются к вашему контроллеру и говорят, что вы придаете какое-то значение Сессии.

С другой стороны, если мы помещаем что-то в сеанс с использованием View, если кто-то хочет отладить ваш код, он должен копаться в представлении, чтобы найти эту строку. Поверьте мне, нелегко копаться в представлениях, и через месяц вы также не сможете найти эту строку в представлении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...