Django ORM-获取相关项目的查询集

时间:2018-09-01 15:28:12

标签: python django orm

请考虑以下模型:

class Car(Model):
    owner = ForeignKey(User)
    ... some irrelevant attributes ...

class User(Model):
    # Django user model

给定用户查询集,是否有一种简单的方法(例如,一个方法调用)如何从第一查询集中获取用户拥有的汽车的查询集?像User.objects.all().related("cars")之类的东西。

2 个答案:

答案 0 :(得分:2)

您可以使用__in查找:

Car.objects.filter(owner__in=my_carz)

答案 1 :(得分:0)

这是一个相关的stackoverflow答案,希望对您有所帮助: fk backwards query

一个简单的实现是:

users = Users.objects.all()
for user in users:
    cars = user.car_set.all()
        ... do something with the cars queryset ...