2 модели
- Order, с колонками:
id, ...
- 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?