【发布时间】:2012-11-29 07:10:09
【问题描述】:
我正在使用 Django 1.5b1 和南迁移,生活总体上很好。我有一些架构更新来创建我的数据库,其中包括一个用户表。然后我为ff.User(我的自定义用户模型)加载一个夹具:
def forwards(self, orm):
from django.core.management import call_command
fixture_path = "/absolute/path/to/my/fixture/load_initial_users.json"
call_command("loaddata", fixture_path)
在我将另一个字段添加到我的 ff.User 模型之前,一切都运行良好,在迁移线的更下方。我的夹具负载现在中断:
DatabaseError: Problem installing fixture 'C:\<redacted>create_users.json':
Could not load ff.User(pk=1): (1054, "Unknown column 'timezone_id' in 'field list'")
时区是我添加到我的用户模型中的字段 (ForeignKey)。
ff.User 与数据库中的不同,因此 Django ORM 放弃了数据库错误。不幸的是,我无法在我的夹具中将我的模型指定为orm['ff.User'],这似乎是南方的做事方式。
我应该如何使用 south 正确加载固定装置,以便在修改这些固定装置所针对的模型后它们不会损坏?
【问题讨论】:
-
能否向我们展示您的迁移代码?
标签: django django-south