簡體   English   中英

Django rest框架如何序列化字符串列表?

[英]Django rest framework how to serialize a list of strings?

我想給郵遞員提供一個字符串列表,例如:

['string1','string2','string3','string4','string5']

但是當它到達serializer.is_valid()時,它給了我:

"non_field_errors": [
            "Invalid data. Expected a dictionary, but got str."
        ]

這是我的序列化器:

class URLRequestedSerializer(serializers.Serializer):
    urls = serializers.ListField(child=serializers.CharField())

我如何才能使序列化程序除字符串列表之外?

就像您在錯誤消息中說的那樣,您似乎在Postman中以JSON的形式發布了列表而不是字典。

您發布了:

['string1', 'string2', 'string3', 'string4', 'string5']

但是您應該已經發布:

{
    "urls": ["string1", "string2", "string3", "string4", "string5"]
}

記住,您的序列化程序定義了字段urls ,因此您必須將數據發送到JSON主體中的正確字段:)

從郵遞員收到的字符串列表是Django中的字符串類型,請嘗試使用eval進行轉換。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM