Есть ли эффективный способ добавления user_id с использованием updateOrCreate? - PullRequest
0 голосов
/ 17 апреля 2019

Я пытаюсь добавить / обновить ответы из многопольной формы, используя updateOrCreate.

Я избегаю необходимости выписывать второй аргумент полностью для каждого поля в форме, используя $request->all.Однако этот подход до сих пор не позволяет мне добавить значение для user_id, необходимое для завершения записи.Это значение (`$ userId ') получается в контроллере, как показано ниже:

  $userId = Auth::user()->id;

  $cropid = $request->id;
  Crop::updateOrCreate(['id'=>$cropid],$request->all());  

Есть ли способ сохранить подход $request->all И добавить значение user_id?

Спасибо,Том.

1 Ответ

5 голосов
/ 17 апреля 2019

Вы можете использовать array_merge для генерации массива с обоими данными:

$data = array_merge($request->all(), ['user_id' => $userId]);

Затем вы можете использовать сгенерированный $data в вашем updateOrCreate методе:

Crop::updateOrCreate(['id' => $cropId], $data);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...