Laravel updateOrСоздать отношения hasOne с различными значениями - PullRequest
0 голосов
/ 21 апреля 2020

2 модели

  1. Order, с колонками: id, ...
  2. OrderDetail, с колонками: id, order_id, vendor_id, ...

Модель заказа hasOne отношения с orderDetail модель

Я хочу обновить несколько заказов с vendor_id.

Запросить такие параметры, как [orderId => vendorId, ...] например [2152 => 4, 2144 => 6 , ...]

    $orderDetails = $request->orders; //[orderId => vendorId , ...]
    $orderIds = [];
    foreach ($orderDetails as $orderId => $vendorId) {
        $orderIds[] =  $orderId;
    }
    $orders = \App\Order::whereIn('id', $orderIds)->get();
    $results = [];
    foreach ($orders as $order){
        clock($orderDetails[$order->id]);
        $results[] = \App\OrderDetail::updateOrCreate(['order_id' => $order->id],['order_id' => $order->id ,'vendor_id' => $orderDetails[$order->id]]);
    }

Может кто угодно предложить мне правильно обновить (или вставить, если не существует) vendor_id без использования l oop в sql?

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