0
を引き起こす私のpython 2.7.11DRF:モデル内のTextFieldとシリアライザでJSONFieldは、文字列化
Aを使用していますが、モデルがのは、JSONの値を格納することになっていますTextFieldを持つGame
を言わせています。 TextFieldが選択されたのは、データベースがpostgres JSONbをネイティブにサポートしていないhibernate ORMと共有されているためです。したがって、私が持っている:
models.py:
@python_2_unicode_compatible
class Game(models.Model):
settings = models.TextField(default='{}')
serializers.py:
class GameSerializer(serializers.ModelSerializer):
settings = serializers.JSONField()
これを処理するクリーンな方法は、データベース内の有効なJSON文字列を有し、かつ、それらを返すがあり、 JSONオブジェクトはAPIを介して?シリアライザで、その後
import json
@python_2_unicode_compatible
class Game(models.Model):
settings = models.TextField(default='{}')
@property
def settings_json(self):
return json.loads(self.settings)
そして: