【发布时间】:2016-04-18 22:04:46
【问题描述】:
我有一个这样的模型(为相关性而简化):
class Director(models.Model):
first_name = models.CharField(max_length=200)
last_name = models.CharField(max_length=200)
user_account = models.ForeignKey(User, null=True, blank=True)
我刚刚意识到user_account 需要是OneToOneField 而不是ForeignKey。进行这种更改基本上意味着删除现有的user_account 字段并创建新的字段。
问题是我过去在处理ForeignKey 字段时有过糟糕的经历。更糟糕的是,我已经在数据库中创建了几个Director 对象,其中ForeignKey 链接到User 对象。
我的问题是如何删除并最终更改 user_account 字段,而不会在以后导致运行时错误?
附加上下文:我使用的是 Django 1.9 和 PostgreSQL。
【问题讨论】:
标签: django postgresql django-models foreign-keys