这个功能不在Laravel文档中,我在源代码中找到了它但是我不完全确定应该如何使用它。例如,如果我正在使用产品,我想根据其UPC在数据库中插入或更新产品。如果存在具有相同UPC的产品,请使用新值更新它。如果没有,请将新值插入为新产品。如何使用此功能完成此操作?
谢谢!
答案 0 :(得分:3)
插入或更新与属性匹配的记录,并用值填充。
updateOrInsert(array $attributes, array $values = [])
https://laravel.com/api/master/Illuminate/Database/Query/Builder.html#method_updateOrInsert
DB::table('products')->updateOrInsert(
[
'upc' => $request->get('upc'),
],
[
'upc' => $request->get('upc'),
'name' => $request->get('name'),
'vendor' => $request->get('vendor'),
'description' => $request->get('description')
]
);