首页 > 解决方案 > JSONFIELD 字段中的 DRF Sum 值

问题描述

我需要从表(Mysql)中返回总计,但其中一个字段是 JSONFIELD,需要添加键值。如下测试我得到以下错误:

JSON 对象必须是 str、bytes 或 bytearray,而不是 float

JSON字段

{
  "repasse_descontos": [
    {
      "nome": "Taxa Administrativa 1º Aluguel",
      "valor": 175
    },
    {
      "nome": "pintura",
      "valor": 200
    }
  ]
}

视图集

def get_queryset(self):
        _qs = (Alugueis.objects
            .filter(ver='s')
            .values('proprietario')
            .annotate(
                total_vcto = Sum('vcto_valor'),
                total_pagto = Sum('pagto_valor'),
                total_repasse = Sum('repasse_pagto_valor'), 
                total_descontos = Sum('repasse_descontos__valor')
                )
            .order_by('proprietario')
        )   
                       
        return _qs

标签: djangodjango-rest-framework

解决方案


推荐阅读