【发布时间】:2019-09-22 04:26:32
【问题描述】:
我写
users = User.objects.filter(is_active=True, article_creator__in=articles)
我得到queryset
<QuerySet [<User: A>, <User: A>, <User: A>, <User: B>, <User: C>, <User: B>]>
如何删除重复值。我需要得到这个queryset
<QuerySet [<User: A>, <User: B>, <User: C>]>
【问题讨论】:
-
试试
filter(...).distinct() -
发生这种情况是因为加入文章。将此过滤器转换为
Exists(<articles subqyery>)。顺便说一句,这个过滤器定义article_creator__in=articles看起来像一个错误或命名错误的变量。因为articles(文章ID)的列表将应用于creators(创作者ID)。这似乎不一致。
标签: django django-orm