我不知道Django试图告诉我什么。我有一个型号WeekTwo
,它继承自Week
,它继承自modelsModel
。我有另一个模型,UserProfile
。我想用WeekTwo
作为UserProfile
一个OneToOne关键,所以我插入下面的代码行:该字段没有指定缺省值,但不是NULL
weekTwo = models.OneToOneField(WeekTwo)
然而,当我尝试迁移使用python manage.py schemamigration my_app --auto
我的数据库,我收到以下错误:
The field 'UserProfile.weekTwo' does not have a default specified, yet is NOT NULL.
我尝试添加default=0
我weekTwo
声明,但是当我尝试架构迁移,现在我得到这个错误:
IntegrityError: column weekTwo_id is not unique
此外,南方现在告诉我,我在interim state between migrations
,并且我might be able to recover
。我从字面上不知道这是什么意思。
您是否阅读过文档? :) http://south.readthedocs.org/en/latest/tutorial/part2.html – favoretti 2013-03-26 22:37:10
它最初告诉你,因为你的新字段是强制性的,表中所有现有的行都需要更新。如果你已经迁移了,它会要求你输入一个默认值。如果你没有迁移,你应该能够删除这两个迁移并重新开始 – 2013-03-26 22:38:23