[英]How to serialize a list of strings
我的序列化程序有一个相当简单的问题。
我的观点:
@api_view(['GET'])
def get_recipes_list(request):
recipes = Recipe.objects.all()
serializer = RecipeListSerializer(recipes, context={'request': request}, many=True)
return Response(serializer.data)
我的序列化器:
class RecipeListSerializer(serializers.Serializer):
name = serializers.CharField()
Output 我得到:
[
{
"name": "Gelato1"
},
{
"name": "Gelato2"
},
]
我想要的是:
[
'name': [
'Gelato1',
'Gelato2',
]
]
我试过: recipes = Recipe.objects.all().values_list('name', flat=True)
这样 QuerySet 有一个名称列表,但我得到了一个 AttributeError。 我将不胜感激任何建议。
如果您使用带有平面属性的 values_list,则不需要将其传递给序列化程序。对于您的 output,您可以将结果添加到响应:
recipes =list(Recipe.objects.values_list('name', flat=True)
return Response({'output':recipes})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.