【发布时间】:2011-01-31 06:37:35
【问题描述】:
您好,有一个现有的 Django 模型 many->one 关系,我想将其更改为 many->many 关系。您可以对同一个字段执行此操作,还是我必须创建一组具有新的多->多关系的并行字段?
【问题讨论】:
标签: django django-models
您好,有一个现有的 Django 模型 many->one 关系,我想将其更改为 many->many 关系。您可以对同一个字段执行此操作,还是我必须创建一组具有新的多->多关系的并行字段?
【问题讨论】:
标签: django django-models
您必须定义一个新字段并处理将旧关系转移到新字段的问题。
多->一个关系只是数据库中存储目标表的 PK 的列。
ID 1 <-> FK_ID 3
ID 2 <-> FK_ID 3
many->many 关系涉及到一个中间表,所以它是一个不同的野兽。
ID 1 <-> m2m_table_id 1 <-> FK_ID 3
我会用新的 m2ms 设置一个新字段,遍历当前的 FK 并将它们添加到新的 M2M 字段中。
【讨论】: