如何在Django ORM中比较计数?

时间:2019-02-28 14:51:01

标签: django django-orm

我有这样的模型:

class A(models.Model):
  done = models.Boolean()

并要检查是否所有的done都是True

A.objects.count() == A.objects.filter(done=True).count()

但是如何在一个查询中在数据库内部做同样的事情?

???
A.objects.annotate(Count('done??')).aggregate(??)
???

1 个答案:

答案 0 :(得分:4)

您应过滤“ done = False”,并检查exists是否有任何结果。

 A.objects.filter(done=False).exists()