首页 > 解决方案 > 更新多个表

问题描述

我如何更新这两个表,我有2个表,订单和产品,我想更新订单上的产品数据,我用下面的代码来做,但是产品不想更新

  public function update(Request $request, $id , Product $product)
{
    $request->validate([
        'do_code' => 'required',
        'delivery_date' => 'required',
        'qty' => 'required',
        'user_id' => 'required',
        'customer_id' => 'required',
        'armada_id' => 'required',
        'send_from_id' => 'required',
    ]);

    $data = Delivery_order::find($id);
    $data->update($request->all());
    if (count($request->product_name) > 0) {
        foreach ($request->product_name as $item => $v) {
            $data2 = array(
                'order_id' => $id,
                'product_name' => $request->product_name[$item],
                'qty' => $request->qty[$item],
                'tonise' => $request->tonise[$item]
            );
            $product->update($data2);
        }
    }
    return redirect('/do')->with('success', 'Data Successfully Updated');
}

标签: phpmysqllaravellaravel-5.8insert-update

解决方案


像这样使用

 $product->order_id     = $id,
 $product->product_name = $request->product_name[$item],
 $product->qty          = $request->qty[$item],
 $product->tonise       = $request->tonise[$item]     
 $product->save();

推荐阅读