2016-06-21 22 views
3

djangoを1.7から1.9にアップグレードするには、システムにインストールされたパッケージ(Debian 8)を経由してapt-getpipDjango jsonfields ValidationError:1.7から1.9へのアップグレード時に[u'Enter valid JSON ']

したがって、私はjsonfieldパッケージをaptの旧バージョンpython-django-jsonfieldの代わりにpipからインストールし、unittestを実行しようとしました。

jsonfield.JSONField()として定義されているすべての私のjsonfieldsは、メッセージとともにテストに失敗:

ValidationError: [u'Enter valid JSON'] 

すべてが前にうまく働きました。どんなアイデア、何が変わったの?

+0

ご関心をe4c5感謝@ JSONField – e4c5

+0

を使用して、あなたのコードのビットを追加します。私はblank=TrueJSONFieldの定義は、null=Trueを追加することで、私の問題を解決しました。私はこの問題を解決し、Djangoのjsonfieldsに関する私の知見を質問に追加しました。 –

+0

私は答えとして投稿するべきだと思います。もちろん、あなたの答えを受け入れることができます。そうすれば他の人にとっても役に立ちます。 – e4c5

答えて

5

Django 1.7ではjsonfield 0.9を使用しましたが、現在はjsonfield 1がインストールされていますが、それらの間には大きな違いがあります。残念ながらjsonfield 0.9simplejsonfrom django.utils import simplejson as json)を使用していますが、これはDjango 1.9では利用できません。

私はDjango 1.9を使用していて、JSONFieldの組み込みサポートはdjango.contrib.postgres.fieldsになっていました。

JSONField(null=True, blank=True) 
関連する問題