Laravel запомнить id

Необходимо с одной таблицей из базы данных связать другую. Авторизированный пользователь сначала заполняет одну форму. Занесение id этого пользователя получилось сделать через Auth::user()->id. После заполнения этой формы пользователь жмёт далее и заполняет следующую (несколько следующих), которые все должны относится к предыдущей. Как можно запомнить id этой самой первой формы?

public function submit (Request $req)
    {
      $d=Auth::user()->id;
      $zayav=new Zayavka();
      $zayav->id_user=$d;
      $zayav->plat=$req->input('plat');
      $zayav->aim=$req->input('aim');
      $zayav->viezd=$req->input('viezd');
      $zayav->metod=$req->input('metod');
      $zayav->vozvr=$req->input('vozvr');
      $zayav->save();
      return redirect()->route('products');
    }

public function submit (Request $req)
    {
      
      $zayav1=new Zayavka1();
      $zayav1->id_zayav=(вот тут как-то надо вбить id из предыдущей заполненной формы);
      $zayav1->123=$req->input('123');
      $zayav1->1234=$req->input('1234');
      $zayav1->save();
      return redirect()->route('products');
    }


Ответы (1 шт):

Автор решения: Eugene

Самый простой способ, наверное, формировать новую вьюху так, чтобы в "следующей форме" было скрыто поле с нужным значением. Но, это как-то неправильно,.. не безопасно..

Посмотри на HTTP Session. Думаю, это то, что тебе нужно.

А можно сделать через связанные маршруты (Nested Resources). Например, есть фотографии и есть комментарии к ним. Делаем связанные маршруты:

Route::resource('photos', 'PhotoController');
Route::resource('photos.comments', 'PhotoCommentController');

Если, в твоем случае, работа с ресурсами избыточна, то можно просто создать несколько нужных маршрутов:

/photos/{photo}/comments/create
/photos/{photo}/comments

В PhotoCommentController будут функции:

create(Photo $photo)
store(Request $request, Photo $photo)

Таким образом, в store() (или как ты назвал submit()) ты всегда будешь знать к чему привязываться.


PS Вместо Auth::user()->id используй Auth::id()

→ Ссылка