1
Djangoを初めて謝罪します。私は文書を精練しており、これに対する答えを見つけることができませんでした。Djangoシリアライザディスプレイモデルフィールドを辞書として
フィールド "bar"を持つモデル "Foo"があります。これは、JSFとしてTextFieldに保存する辞書です。このフィールドを辞書として表示するGETリクエストが必要ですが、リクエストを行うと、辞書はJSON形式の単一の文字列として表示されます。
モデル::
class Foo(models.Model):
bar = models.TextField(blank=True, default="{}")
def getBar(self):
return json.loads(bar)
シリアライザ:
class FooSerializer(serializers.ModelSerializer):
class Meta:
model = Foo
fields = ("bar")
read_only_fields = ("bar")
def create(self, data):
return Foo.objects.create(**data)
ビュー:
class FooList(generics.ListAPIView):
queryset = []
for foo in Foo.objects.all():
foo.bar = json.loads(foo.bar)
# Printing type of foo.bar here gives "type <dict>"
queryset.append(foo)
serializer_class = FooSerializer
おかげ
は私のコードを要約します!
は、完全にドキュメントへのリンクのおかげで働きました! – Kieran