【发布时间】:2015-06-11 09:38:13
【问题描述】:
我有两张桌子:
class Foo(models.Model):
pass
class Bar(models.Model):
foobar = models.ForeignKey(Foo, unique=True)
barfoo = models.ForeignKey(Foo, unique=True)
验证确保永远不会有既是 foobar 又是 barfoo 的 Foo。我需要删除Bar 模型和所有Foos 是barfoos。我的方法是从Bar.barfoo 中删除外键约束,运行一些SQL 删除所有Foos 是barfoo,然后删除模型。不过,我似乎在 django 迁移文档中找不到任何用于删除 Django 动态生成的外键约束的内容。想法?
【问题讨论】:
-
没有得到任何响应,我通过将
foobar_id复制到一个临时整数字段然后完全删除外键字段来实施解决方法。有一个更直接的解决方案仍然很好。
标签: python django postgresql django-migrations