2 款
- 顺序,带列:
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]]);
}
谁能建议我在不使用 sql 循环的情况下正确更新(或插入,如果不存在)vendor_id 吗?