如何解决save操作在foreach中只保存最后一条数据?

发布于 2022-09-13 01:10:41 字数 88 浏览 34 评论 0

tp5中,想插入多条数据,在foreach 使用模型的save()方法,每次只能插入最后一条数据,是啥原因呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

青萝楚歌 2022-09-20 01:10:41

假如普通插入是:

model->save($data);

那么循环中插入应该是

foreach ($array as $data) {
    model->data($data, true)->save();
}

P.S.1. 链式中间的啥 isUpdateallowField 自己看着加。

P.S.2. 其实有 saveAll 方法的,没必要循环执行……

琉璃繁缕 2022-09-20 01:10:41

没用过你这个,不过我在使用koa+sequelize+mysql进行数据循环插入的时候,有个你这种情况,结果是js的foreach中不能使用异步的情况进行插入,若是需要进行循环插入的话,使用原始的for循环进行遍历插入.不知道你这种是不是这个情况?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文