我有男孩和玩具。两个django模型。玩具可以由不止一个男孩拥有,每个男孩可以拥有多个玩具......所以我在Boy中放了一个ManyToMany字段。
如果我想要一个男孩拥有的玩具清单,这很容易。到目前为止这么好。
但现在我需要根据玩具实例获取男孩列表。关系应该是对称的,但我不知道语法。
注意:不,这些不是我真正的实体名称 - 我只是觉得它可能更容易理解。
答案 0 :(得分:6)
应该是:
toy_instance.boy_set.all()
见这里:
http://docs.djangoproject.com/en/dev/topics/db/queries/#many-to-many-relationships
答案 1 :(得分:3)
from django.db import models
class Toy(models.Model):
name = models.CharField('Name', max_length=250)
def __unicode__(self):
return self.name
class Boy(models.Model):
name = models.CharField('Name', max_length=250)
toys_owned = models.ManyToManyField(Toy, blank = True)
def __unicode__(self):
return self.name
如果toy =是Toy类的实例,那么你正在寻找toy.boy_set.all()