【发布时间】:2018-03-26 21:34:42
【问题描述】:
如果只提供一个字段作为数组,Laravel / Eloquent 是否提供了一种通过一次调用创建多条记录的方法?
例如,我得到 $request 并带有下面的数据,但只有 propIds 会被分解并作为数组提供,所有其他值对于所有新记录都是相同的。
{"_token": "kEKmrPzu4nCk35xJAMOgdl0kNdwUZvpECsBl91dH",
"propIds": "126,129,71,82,77,64,69",
"rate": "4",
"cost": "55"
}
我可以做一个 foreach 并构建一个数组,然后运行 Model::insert($newArray);
但也许 Laravel 确实提供了一个解决方案,如果只提供一个字段作为数组。谢谢。
现在我只是使用 foreach 循环创建数组,然后调用 Model::insert($newArray);
使用Model::insert($newArray); 插入多条记录不会自动添加 created_at 和 updated_at 日期。我在数据库中添加了一个时间戳作为默认值。
【问题讨论】:
-
不,您必须提供所有字段值。只需在插入之前映射它们。
标签: php mysql arrays laravel eloquent