Я пытаюсь сделать это:
Если пользователь переходит на страницу корзины (CartController
), из данных из БД генерируется массив $cart
(корзина хранится в БД),Но в данные вносятся некоторые изменения, такие как замена цены пользовательской ценой пользователя.
Если пользователь нажимает кнопку «Завершить заказ» в нижней части страницы корзины, он отправит форму для OrdersController@store
,который должен генерировать тот же массив, который генерирует CartController
.
Чтобы избежать этой дорогостоящей операции, я хочу сохранить массив $cart
в сеансе, но только для еще одного запроса.Когда пользователь нажимает кнопку «Завершить заказ» и отправляет форму в OrdersController @ store, массив больше не нужно создавать.Если он уходит со страницы корзины, массив больше не будет храниться в хранилище сеансов.И когда он посещает cart /, он генерируется и сохраняется снова.
Однако я не смог успешно использовать flash () или reflash ().
Я попытался выполнить reflash() в обоих контроллерах, но это, похоже, не имеет значения.Должно быть, я использовал это неправильно.Я попробовал $request->session()->reflash();dd($request)
в магазине и request()->session()->flash('cart', $cart);$request->session()->reflash()
в CartController.
Поэтому я пытаюсь сохранить данные во флэш-памяти для следующего запроса страницы .
Код CartController
и OrdersController@store
: https://gist.github.com/Shifterovich/e4cf7e23421d495a8cd9a358dd4849d0