所以我Film
和Person
模特有多对多的关系,因为每部电影可以包含许多演员/女演员,并且每个演员/女演员可以出现在许多电影中。
我想知道是否有办法根据演员拥有的电影数量来限制查询。
例如,
Person.objects.all()
将返回数据库中的每个人,而
Person.objects.all()[0].film_set.all()
将返回一组包含数据库中第一人的所有电影。
我想知道是否可以说,查询所有Person
在其film_set
.
我知道一种方法是只查询所有 Person 对象,然后是 if 语句 iflen(film_set.all()) > n
循环遍历它们并从中创建一个子列表,但是有没有更好的方法不涉及遍历整个数据库?