Django jsonfields ValidationError:[u'Enter valid JSON']从1.7升级到1.9

时间:2016-06-21 19:08:05

标签: django django-jsonfield

我正在将django从1.7升级到1.9,通过apt-get替换安装在系统(Debian 8)中的软件包,通过pip安装软件包。

所以,我从pip安装了jsonfield软件包,而不是apt的旧版python-django-jsonfield,并尝试运行单元测试。

我的所有jsonfields(定义为jsonfield.JSONField())都没有通过消息测试失败:

ValidationError: [u'Enter valid JSON']

以前一切都很好。有什么想法,改变了什么?

1 个答案:

答案 0 :(得分:5)

使用Django 1.7我使用jsonfield 0.9,但现在我安装了jsonfield 1,它们之间存在显着差异。很遗憾,jsonfield 0.9使用了simplejsonfrom django.utils import simplejson as json),这在Django 1.9中不可用。

因为我正在使用Django 1.9而且JSONField中有django.contrib.postgres.fields的内置支持,所以我转而使用它。我通过将null=Trueblank=True添加到JSONField定义来解决我的问题:

JSONField(null=True, blank=True)
相关问题