gpt4 book ai didi

python - Django 自定义字典响应

转载 作者:行者123 更新时间:2023-12-01 09:14:13 25 4
gpt4 key购买 nike

我正在使用 Django Rest 框架,并且我有一个以字典格式返回信息的 View 。这是我的模型:

class Child(models.Model):
name = models.CharField(max_length=50, unique=True)
age = models.IntegerField(null=False, blank=False)
height = models.IntegerField(null=False, blank=False)

我想将以下响应作为字典返回,其中 name 字段是键:

{
"Alice Allen": {
"age": 3,
"height": 98
},
"Bob Brady": {
"age": 4,
"height": 105
}
}

我知道我可以使用 GenericAPIView 并实现“get”方法中的逻辑(获取数据并解析到字典中),但我想知道是否有另一种使用 Django 序列化器的解决方案。

谢谢。

最佳答案

如果您使用的是viewset,您可以尝试重写list方法并自定义响应:

class ChildViewSet(viewsets.ModelViewSet):

def list(self, request, *args, **kwargs):
response = super(ChildViewSet, self).list(request, *args, **kwargs)
response.data = {result.pop('name'): result for result in response.data}
return response

关于python - Django 自定义字典响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51396045/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com