例如,我有这些模型:
class Person(models.Model):
name = models.CharField(max_length=20)
employer = models.CharField(max_length=20)
class Car(models.Model):
person = models.ForeignKey(Person)
name = models.CharField(max_length=10)
model = models.CharField(max_length=10)
...
我想让所有拥有特定汽车的人:
people = Person.objects.filter(car__name="Toyota")
现在我想给这些人写下关于他们自己汽车的详细信息。我可以做这个:
for person in people:
...
cars = person.car_set.filter(name="Toyota")
...
但它再次击中数据库。我怎样才能避免这种情况?有什么方法可以更简单地做到这一点吗?