【发布时间】:2021-06-20 06:53:38
【问题描述】:
在我的项目中,我有具有相同值“标题”的文章和用户响应。我只想找到第一个文章,因为其他对象具有相同的“标题”,这些是用户的答案。如何从查询集中排除具有相同“标题”参数的对象。
我试试这个:
q1 = Article.objects.order_by().values('title').distinct()
* 效果很好,但它会返回类似列表的内容。
好吧,我尝试将其转换为查询:
q2 = Article.objects.filter(title__in=q1).distinct()
*但它会导致它再次返回所有重复主题文章。
如何从查询集中排除具有相同标题的对象而不将它们更改为列表?
【问题讨论】:
-
这个主题是我用来创建查询的,但是它将对象变成了一个列表。我需要一个带有对象的查询集。
-
@MaddieGraham,试试这个:
Article.objects.filter(title__in=q1).order_by('title').distinct('title') -
在我的情况下它返回:此数据库后端不支持 DISTINCT ON 字段