django loaddata DeserializationError:[u“'127'值必须为None,True或False。”]

时间:2012-11-11 19:55:52

标签: django django-database

我在尝试加载数据库时不断获得以下回溯。我继续使用我的生产服务器并执行./manage.py dumpdata appname data.json,然后在本地尝试运行./manage.py loadata

Problem installing fixture 'donor.json': Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/django/core/management/commands/loaddata.py", line 190, in handle
    for obj in objects:
  File "/Library/Python/2.7/site-packages/django/core/serializers/json.py", line 47, in Deserializer
    raise DeserializationError(e)
DeserializationError: [u"'127' value must be either None, True or False."]

在我的模型中,我的所有布尔字段都是NullBooleanField,其中blank = True,null = True set。我不明白这会让你感到沮丧。我以前从未尝试过这个过程。我只是想在我的本地获得一份产品副本用于测试目的。我的数据库是MySQL btw。

1 个答案:

答案 0 :(得分:2)

此错误意味着Django正在尝试将值127导入BooleanField,但它不能,因为127不是布尔值或空值。

您确定模型在生产和开发方面是否相同?是否有可能在生产中,某个模型中的某个字段是整数,但是在开发之后,您将其更改为布尔值。如果模型不相同,那么您不能只将生产中转储的灯具导入开发环境。在这种情况下,您将不得不进行迁移。对于Django来说,South是一个很好的工具。