5

考虑这些伪类:

class Foo(models.Model):
    pass

class Bar(models.Model):
    foo = models.ForeignKey(Foo)

我想通过 Foo 的管理器有效地过滤,以获得一个 QuerySet,它只保存 Foo 对象,至少有 2 个 Bar 对象指向它。

4

1 回答 1

11

使用聚合Count:_

from django.db.models import Count

Foo.objects.annotate(bar_count=Count('bar')).filter(bar_count__gte=2)
于 2012-07-30T16:33:36.007 回答