将Django多个>一个关系改为多个>多个关系?

时间:2011-01-31 06:37:35

标签: django django-models

您有一个现有的Django模型多个>一个关系,我想将其更改为多个>多个关系。你能用同一个字段做到这一点,还是我必须创建一个具有新的多>多关系的并行字段集?

1 个答案:

答案 0 :(得分:1)

您必须定义一个新字段并处理将旧关系转移到新字段。

多个>一个关系只是数据库中存储目标表的PK的列。

ID 1 <-> FK_ID 3
ID 2 <-> FK_ID 3

很多&gt;很多关系涉及一个中间表,所以它是一个不同的野兽。

ID 1 <-> m2m_table_id 1 <-> FK_ID 3

我用新的m2ms设置了一个新字段,迭代当前的FK并将它们添加到新的M2M字段中。