【发布时间】:2015-10-17 19:40:14
【问题描述】:
Django 中的多对多关系示例:
class First(models.Model):
seconds = models.ManyToManyField(Second, through='Middle')
class Middle(models.Model):
first = models.ForeignKey(First)
second = models.ForeignKey(Second)
class Second(models.Model):
在documentation on intermediary models 之后,要关联的对中只有一个模型包含ManytoManyField,上面示例中的模型First。这是正确的吗?
如果是这样,哪个模型应该包含ManytoManyField 字段?根据ManytoManyField 的位置,使用两端的关系有什么不同吗?
谢谢
编辑(我应该更清楚):
我对中间表感兴趣,因为我将有额外的数据来存储关系。
当我说用法时,我不是指定义模型,我指的是使用关系(否则我会让 Django 做这件事)。
如果我希望所有秒与第一个相关,它是否与将所有第一个与第二个相关完全一样,或者ManytoManyField 是否会通过引入任何额外功能使一个方向比另一个方向更容易实现?
【问题讨论】:
标签: django many-to-many relationship django-orm m2m