flask-sqlalchemy分页的问题,paginate.items比filter().all()应该输出的对象多

白越
2023-12-01

最近在做一个项目用的是python的flask框架,今天遇到一个很匪夷所思的事情。那就是paginate.items比filter().all()应该输出的对象多。

挑重点讲

遇到这个问题是因为我在查询数据需要用到两张表,在两张表联合的时候产生的重复的数据

courseDataSet = course_data_set.query.join(versions_detailed,
                                                   versions_detailed.uid == course_data_set.id).filter(
            versions_detailed.corpName == corpName).paginate(page=page, per_page=17)

这个时候需要使用group_by去重

courseDataSet = course_data_set.query.join(versions_detailed,
                                                   versions_detailed.uid == course_data_set.id).filter(
            versions_detailed.corpName == corpName).group_by(course_data_set.id).paginate(page=page, per_page=17)

这样好了。

在这里记录一下。弄了好久,刚开始连错误都不知道是啥。

 类似资料: