在模型.py在
class QaCommission(models.Model):
user = models.ForeignKey(PlUser, on_delete=models.CASCADE, blank=True, null=True, related_name='user_commission')
ref = models.ForeignKey(PlUser, on_delete=models.CASCADE, blank=True, null=True, related_name='ref_commission')
price = models.FloatField(blank=True, null=True)
pct = models.FloatField(blank=True, null=True)
commission = models.FloatField(blank=True, null=True)
status = models.IntegerField(blank=True, null=True, default=0)
在序列化程序.py在
^{pr2}$在视图.py在
class QaCommissionList(viewsets.ModelViewSet):
queryset = QaCommission.objects.all()
serializer_class = QaCommissionSerializer
如果在此视图中过滤ref=60,结果如下所示:
{
"count": 18,
"next": "http://127.0.0.1:8008/api/qacommission/?ref=60&page=2",
"previous": null,
"results": [
{
"id": 1,
"price": 20.0,
"pct": 0.1,
"commission": 2.0,
"status": 1,
"user": 7,
"ref": 60
},
{
"id": 2,
"price": 10.0,
"pct": 0.1,
"commission": 1.0,
"status": 1,
"user": 7,
"ref": 60
},
......
......
......
{
"id": 10,
"price": 15.0,
"pct": 0.1,
"commission": 1.5,
"status": 1,
"user": 7,
"ref": 60
}
]
}
我想将结果中所有的“佣金”字段加起来,并将总和附加到原始查询集(可能在“count”旁边):18,如上所示,有18个佣金需要计数。在
我如何实现这一点?需要帮助,谢谢!在
尝试将
ModelViewset
的list()
方法重写为这个答案总结了来自特定页面的
^{pr2}$commision
并显示了它更新
abouve的答案将返回
commission
列的全部和(不考虑分页)感谢你提到这样一个有效的观点
相关问题 更多 >
编程相关推荐