Drf项目从SQLite数据库切换到Postgresql数据库产生的修改数据导致乱序的解决方法
项目的数据库从SQLite数据库切换到Postgresql数据库后,如果修改的表数据的值,会导致修改的那条数据顺序排到第一位。
·
一、简介
项目的数据库从SQLite数据库切换到Postgresql数据库后,如果修改的表数据的值,会导致修改的那条数据顺序排到第一位
二、解决方法
具体问题如下图:

出现这个的原因应该是SQLite和Postgresql默认返回数据的排序方式不同,SQLite默认按照id顺序返回,而Postgresql默认按照修改时间排序
由于是drf项目,因此需要在序列化返回数据时不采用默认返回方式,指定为按照id顺序返回,原代码如下:
queryset = models.Ip156.objects.all()
在该代码后面指定按照id顺序排列
queryset = models.Ip156.objects.all().order_by('id')
修改完成后即可按照id顺序返回数据

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)