Python 如何使用“分组依据”查询形成响应
我想使用对象类型作为键为端点创建自定义响应对象 它是django后端 模型形状: 布拉布拉赫模型 id=uuid 类型='type1' 值='我是蝙蝠侠!' 视图: 类HedesViewAPIView: 权限\u类=已验证, def getself,请求: hedes=Event.objects.all.query events.group_by=[类型] evento=QuerySetquery=hedes,model=hedes 返回响应 { hedes:EventSerializerevento,many=True.data } 答复:Python 如何使用“分组依据”查询形成响应,python,django,model-view-controller,Python,Django,Model View Controller,我想使用对象类型作为键为端点创建自定义响应对象 它是django后端 模型形状: 布拉布拉赫模型 id=uuid 类型='type1' 值='我是蝙蝠侠!' 视图: 类HedesViewAPIView: 权限\u类=已验证, def getself,请求: hedes=Event.objects.all.query events.group_by=[类型] evento=QuerySetquery=hedes,model=hedes 返回响应 { hedes:EventSerializereve
hedes: [{...}, {...}, {...}]
如何将此响应编辑为这样
hedes: {
type1: [{...}, {...}],
type2: [{...}]
}
我不太熟悉Django中的group_by语句,但在SQL(底层查询语言)中,group by为每种类型返回一项,这不是您想要的
为了获得您想要的结果,您可能需要编辑EventSerializer的To_表示函数,这在对这个问题的回答中有概述:在Django中,如果您想像在SQL查询中那样“分组”,您需要使用ORM的“值”函数。下面的模块帮助我解决了这个问题: