如何创建OneToMany关系?

24 浏览
0 Comments

如何创建OneToMany关系?

我有一个模型

class Meeting(models.Model):
    name = models.CharField(max_length=255)

如何创建一个与多个会议相关联且一个会议只能有一个GroupMeeting的模型GroupMeeting

class GroupMeeting(models.Model):
    meeting = models.ForeignKey(Meeting, on_delete=models.SET_NULL)
    group_id = models.IntegerField()
    name = models.CharField(max_length=255)

在这种情况下,我有相反的情况

多个GroupMeeting拥有一个Meeting

如何在不更改Meeting类的情况下实现这一点!

0
0 Comments

如何创建一对多关系?

问题原因:ForeignKey被错误地使用。ForeignKey是多对一的关系,所以如果在Meeting类中使用了以下代码:

group_meeting = models.ForeignKey(GroupMeeting, on_delete=models.SET_NULL)

那么你就得到了你所期望的结果。

解决方法:将ForeignKey的参数中的模型类和外键字段的位置互换即可。

0