姜戈中的一对一关系



你在 Django 模型中自动使用外键 _ id 被添加到相应的字段中,同时保存在 db 中。 在 Django 模型中,一对一和多对多的关系是否也发生了同样的情况?

简而言之:它发生在OneToOneField秒内,而不是发生在ManyToManyField秒内。

OneToOneField实际上只不过是一个ForeignKey字段,但具有unique=True,以及一些小的变化(例如,反向不是model_set,而只是model,此外,反向也直接导致模型对象,而不是查询集,因为最多有一个这样的对象(。对于OneToOneField,我们将有一个fieldname_id列。

请注意,对于ForeignKey/OneToOneField,此类列存在于您定义关系的位置,而不是定位模型。如果A有要BOneToOneField,则可以查询b_id,但B模型上不存在a_id

对于ManyToManyField来说,情况并非如此。这种关系不是在该表的列中表示的,而是由一个单独的(链接到关系中的两个模型(表示。

相关内容

  • 没有找到相关文章

最新更新