最近在做一个项目用的是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)
这样好了。
在这里记录一下。弄了好久,刚开始连错误都不知道是啥。