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

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

阅读 3.1k
2 个回答

假如普通插入是:

model->save($data);

那么循环中插入应该是

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

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

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

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