【发布时间】:2011-11-05 18:19:51
【问题描述】:
使用 South/Django,我遇到了一个问题,我试图为数据库中现有行的模型添加 UNIQUE 和 NOT NULL 列。 South 提示我为该列指定默认值,因为它是 NOT NULL。但由于它也有UNIQUE 约束,我不能在models.py 中为字段添加默认值,也不能指定一次性值,因为它在所有行上都是相同的。
我能想到的解决此问题的唯一方法是首先创建一个可为空的列,应用迁移,运行脚本以使用该列中的唯一值填充现有行,然后添加另一个迁移以添加 @ 987654325@ 对该列的约束。
但是有没有更好的方法来完成同样的事情?
【问题讨论】:
标签: python django django-models django-south