【发布时间】:2016-11-13 16:04:33
【问题描述】:
我有一个 Django 模型,它具有另一个模型的外键:
class Example(models.Model)
something = models.ForeignKey(SomeModel, db_index=True)
我想将底层的DB列保留为字段,但要摆脱数据库中的外键约束。
所以模型会变成:
class Example(models.Model):
something_id = models.IntegerField()
而且,需要明确的是,something_id 是 Django 为外键字段创建的列。
我不想删除该列并重新创建它(这是 Django 在如上所述更改模型后自动生成迁移时所做的)。
我想保留字段但是我想通过迁移移除数据库中的外键约束。我不清楚如何使用 Django 迁移来执行此操作 - 是否有一些内置支持,或者我是否必须运行一些原始 SQL,如果是,我如何以编程方式获取约束的名称?
【问题讨论】:
标签: django foreign-keys database-migration django-1.9