首页 > 解决方案 > ListSerializer for json on rest_framework 序列化器

问题描述

我想像这样返回json,

{"texts":[
    "string1
    "string2"
    "string3"
]}

一个简单的索引textslist

我的对象在这里

class Task(object):
    def __init__(self, texts, created=None):
        self.texts = texts
        self.created = created or datetime.now()    

问题是序列化程序,因为textslist需要使用ListSerializer

所以我做了这个,但是在序列化文本字段之后是空的。

class TextsSerializer(serializers.Serializer):
    serializers.CharField(max_length=200) # There's something wrong....??

class TaskSerializer(serializers.Serializer):
    texts = TextSerializer(many=True)
    created = serializers.DateTimeField()

感谢回复

我的解决方案在这里

删除类 TextSerializer 然后像这样更改 TaskSerializer

class TaskSerializer(serializers.Serializer):
    texts = serializers.ListField(child=serializers.CharField(max_length=200))
    created = serializers.DateTimeField()

标签: pythondjango

解决方案


使用serializers.ListField--(DRF 文档)

class TextSerializer(serializers.Serializer):
    text = serializers.ListField(child=serializers.CharField(max_length=200))

推荐阅读