如何将相同的ID插入到其他表中?
如何将相同的ID插入到其他表中?
我有一张表,类似自动增长,我尝试做这样的事情:在一个订单表中,你插入例如你的id,产品名称,价值和交货地址,然后我需要在另一个名为订单详情的表中插入订单id。使用以下方法:
$order = new order; $order->id_user = 1; //$iduser; $order->name_destain = $request->name; $order->state = 1; $order->total = $request->total; $order->created_at = Carbon::now();; $order->updated_at = Carbon::now();; $order->save();
问题的出现原因:
在上述代码中,我们尝试将相同的id插入到另一个表中。然而,由于缺少一行代码,导致在保存订单时无法将相同的id插入到order_details表中。
问题的解决方法:
要解决这个问题,我们需要在代码中添加一行代码。具体而言,我们需要在$orderDetailObj对象的order_id属性中设置$order->id_user的值,然后调用update()方法来保存更改。以下是添加的代码行:
$orderDetailObj->order_id = $order->id_user;
$orderDetailObj->update();
通过添加这些代码,我们可以成功将相同的id插入到order_details表中,并解决这个问题。整个代码如下:
$order = new order; $orderDetailObj = new OrderDetail; $order->id_user = 1; //$iduser; $order->name_destain = $request->name; $order->state = 1; $order->total = $request->total; $order->created_at = Carbon::now(); $order->updated_at = Carbon::now(); if($order->save()){ $orderDetailObj->order_id = $order->id_user; $orderDetailObj->update(); return true; }
通过以上的解决方法,我们可以成功地将相同的id插入到其他表中。