我正在使用 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']
,这似乎是南方的做事方式。
我应该如何使用南正确加载灯具,以便在修改这些灯具所针对的模型后它们不会损坏?
我找到了一个可以完成这项工作的 Django 片段!
https://djangosnippets.org/snippets/2897/ https://djangosnippets.org/snippets/2897/
它根据固定装置中冻结的模型加载数据,而不是应用程序代码中的实际模型定义!非常适合我。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)