Как сравнить счетчики в Django ORM? - PullRequest
0 голосов
/ 28 февраля 2019

У меня есть такая модель:

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 голосов
/ 28 февраля 2019

Вам нужно отфильтровать по done = False и проверить, есть ли какие-либо результаты с exists.

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