Python 如何从ForeignKey转变为Django的ManyToManyField?
我正在尝试将一个变量从ForeignKey更改为ManyToManyField。尝试执行命令迁移时出现以下错误: ValueError:无法将字段videos.Video.machine更改为videos.Video.machine-它们是不兼容的类型(不能更改M2M字段或从M2M字段中更改,也不能通过M2M字段上的=添加或删除)Python 如何从ForeignKey转变为Django的ManyToManyField?,python,django,Python,Django,我正在尝试将一个变量从ForeignKey更改为ManyToManyField。尝试执行命令迁移时出现以下错误: ValueError:无法将字段videos.Video.machine更改为videos.Video.machine-它们是不兼容的类型(不能更改M2M字段或从M2M字段中更改,也不能通过M2M字段上的=添加或删除) 如何解决这个问题呢?这里有两种方法(我可以马上想到): 创建临时字段以存储videos.Video.machine的当前数据,删除videos.Video.machi
如何解决这个问题呢?这里有两种方法(我可以马上想到):
我个人会选择第二个,因为它不仅更简单,而且命名更有意义 您可以添加m2m字段,执行自定义迁移,然后在另一个迁移中删除旧字段,并可能重命名新字段。