我正在尝试在 django 中建立一对多关系。
在我的模型中,我有一个 Person 类和一个 Group 类,我想要建立的关系是一个 Group 内部可以有 N 个人,并且一个 Group 不能在没有至少一个人的情况下存在
在 MER 图中,它就像(想象这些是实体和关系)
|组|1====-----N|人|
正如 Arthur 所说,这在 Django 文档中有很好的记录。
事实上这很简单:
from django.db import models
class Person(models.Model):
# Some other fields
group = models.ForeignKey(Group, related_name='people')
class Group(models.Model):
# Some fields
正如您所看到的,您只需在 person 类中创建一个外键 -> 这与您在数据库中手动设置它的方式非常等效(如果您应该这样做)。
Django会自动添加反向关系,这样你就可以从一个组中找到人:
some_group.people
请注意,related_name
指定反向关系的名称。这是可选的,但我猜你想使用people
代替persons
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)