1

尝试加载数据库时,我不断收到以下回溯。我在我的生产服务器上做了一个./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。我不明白这是在生气什么。我以前从未尝试过这个过程。我只是想在本地获取一份生产副本以用于测试目的。我的数据库是 MySQL 顺便说一句。

4

1 回答 1

2

这个错误意味着 Django 正在尝试将值127导入 aBooleanField并且它不能,因为127它既不是布尔值也不是空值。

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

于 2012-11-11T23:50:26.090 回答