在Django中,我想实现一对多的关系

时间:2013-01-02 23:21:08

标签: django one-to-many

我读过人们谈到在Django中使用ForeignKey进行一对多关系,但这不是我想要的。假设我有一个名为Club的模型,其定义简单如下:

class Club(models.Model):
  name = models.CharField(max_length = 64)

我想要的是添加一个名为owner的字段,该字段是用户的一对多关系(User模型)。我不想向引用Club的用户添加ForeignKey,因为这会使用户混乱。我真的希望俱乐部模型中的一个字段能够维持与0,1或更多被认为是俱乐部所有者的用户的关系。有人有什么想法吗?

1 个答案:

答案 0 :(得分:3)

您正在寻找的是Many-To-Many关系。

  

在多对多关系中,表A中的每一行可以在表B中具有多个(零个或多个)匹配行,并且表B中的每一行可以在表A中具有许多匹配行。每个俱乐部可以具有例如,许多所有者,每个所有者都可以拥有许多俱乐部。

改编自:http://my.safaribooksonline.com/book/databases/sql/9780321584069