Laravel: разница между сеансом () -> flash () и сеансом () -> сейчас () - PullRequest
0 голосов
/ 28 октября 2019

Я пытался показать флэш-сообщение, когда задан неправильный параметр.
Я пытался сделать это:

with session()->flash('error', 'error message.'); 

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

При попытке с ним (потому что это было рекомендовано в некоторых ответах SO, которые я нашел):

session()->now('error', 'error message.');

это сработало;Я поместил правильный параметр в URL и мне пришлось перезагрузить его только один раз.

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

1 Ответ

1 голос
/ 29 октября 2019

Метод flash() используется для хранения данных в сеансе только для следующего запроса. Вот почему вам пришлось дважды перезагрузить приложение.

С другой стороны, now() предназначено для промежуточного использования, и данные, которые вы сохраняете с помощью этого метода, удаляются, как только вы делаете новый запрос.

Итак, какой метод использовать, в основном зависит от того, когда вам нужен доступ к вашим данным (текущий или следующий запрос).

...