django - Django View 和序列化程序中的嵌套注释
问题描述
我有一个用例,我想拥有以下格式的数据。
{
"total_discount_amount": 0,
"total_paid": 0,
"total_billed": 0,
"visits": "string"
"users_summary": [
{
"id": "string",
"date": "string",
"total_discount_amount": 0,
"total_paid": 0,
"total_billed": 0,
"visits": "string"
}
]
}
数据的外部是users_summary列表数据的总和。
class Test(generics.ListAPIView):
queryset = Model.objects.all()
serializer_class = SummarySerializer
def list(self, request, *args, **kwargs):
data =Model.objects.values('user').annotate(visits=Count('user'),total_discount_amount=Sum('model__amount', total_paid = Sum('model__paid_amnt',total_billed = Sum('model__bill_amnt').filter()
serializer = SummarySerializer(data, many=True)
return Response({'users_summary': serializer.data})
在这里,我没有得到外部值。我尝试以一种可以获得 users_summary 聚合数据但无法实现的方式实现序列化程序。
输出我得到的是
{
"users_summary": [
{
"id": "string",
"date": "string",
"total_discount_amount": 0,
"total_paid": 0,
"total_billed": 0,
"visits": "string"
}
]
}
有什么解决办法吗?
解决方案
推荐阅读
- ios - 看不到标签栏图片
- android - 将表单 3.4.3 更新到 4.1.1 后无法检测到 OpenCV 库
- python - sklearn 给出了意外的 r2 分数
- c++ - 如何阻止 cmake 用 cl 编译?
- dart - 猜测和检查算法飞镖语言
- javascript - 在 react-router-dom v5 中未使用 BrowserRouter 定义路由器上下文
- google-analytics - 有没有办法使用 Reporting Analytics API 将数据写入 GA360 平台?
- c++-winrt - 构造 PropertyChangedEventArgs 抛出 winrt::hresult_wrong_thread
- xslt - 如何使用 XSLT 删除特定前缀
- java - Android Webkit CookieManager:如何通过 CookieManager 获取所有 cookie?