Hiii 我有 2 个数据库表,列表:1“id,invoice_id,主题,总计”表:2“id,invoice_id,item_name,price”。每当我尝试在 invoice_id 的帮助下更新记录时,如果记录没有存在于项目表中,它不会在项目表中插入新项目。
在这里我附上了我的 JSON 数据
{
"date": "2019-06-08",
"client_id": "1",
"currency_id": 4,
"total_amount": null,
"subject": "RD Management",
"items": [
{
"item_name": "Saving",
"price": "500"
},
{
"item_name": "Fix",
"price": "500"
},
{
item_name": "Current",
"price": "200"
}
]
}
这里的一个问题是我的 JSON 也无法发送 item_id,所以如果没有项目 ID,我如何更新我的记录...???我的表中没有第三项
这是我的控制器
foreach ($request->items as $key => $items)
{
$item_update = [
'item_name' => $items['item_name'],
'price' => $items['price']
];
DB::table('items')
->where('invoice_id', $id)
->update($item_update);
}
我除了这样的输出
"items": [
{
"id": 1,
"invoice_id": "1",
"item_name": "Saving",
"price": "500",
},
{
"id": 2,
"invoice_id": "1",
"item_name": "Fix",
"price": "500",
},
{
"id": 3,
"invoice_id": "1",
"item_name": "current",
"price": "200",
},
]
但我的实际输出是
"items":[
{
"id":"1"
"item_name": "Fix",
"price": "500",
},
{
"id":"2"
"invoice_id": "1",
"item_name": "Fix",
"price": "500",
}
]
此输出在更新时覆盖 item_name。有什么办法可以解决这两个问题。