采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
是不是主键被你赋值了? 如果主键一样 那么这个save操作会变成更新语句
没有被赋值,主键是默认自增的id,发现被覆盖后,我后来设置了唯一主键,然后在保存数据之前进行了查询,之后再进行更新或插入,然后就没问题了;但是我还是不明白之前是怎么回事,会不会是peewee内部处理机制有问题呢?
你可以看看peewee的save源码,里面有一个重要的逻辑:判断当前的数据的主键是否有设置值,如果有那么就是一个update语句,如果没有那么就是一个insert语句,你这里既然出现了更新操作那么就一定是设置了主键,因为你没有设置主键那你说更新数据了,问题是peewee如何知道更新哪条数据?
登录后可查看更多问答,登录/注册
慕课网严选精品教程,高质量内容+服务!
1.3k 20
1.6k 17
1.2k 17
1.1k 17
1.4k 13