【问题标题】:Aggregation solution Django聚合解决方案 Django
【发布时间】:2013-05-27 22:55:18
【问题描述】:

我正在尝试获取已售产品的总数,代码如下:

models.py

class Ventas(models.Model):
  codigoventa = models.CharField(max_length=7, unique=True)
  codigocliente = models.ForeignKey('Clientes')
  Fecha_registro = models.DateTimeField("Fecha de edicion", auto_now_add=True) 
  totalventa = models.DecimalField(max_digits=10, decimal_places = 2)
  codigosucursal = models.ForeignKey('Sucursales')
  totalventa = models.IntegerField()

  def __unicode__(self):
      return self.codigoventa

Views.py

 def ventas_anio(request):
        ventas = Ventas.objects.all().aggregate(total_payment=Sum('totalventa'))

        return render_to_response('ventasanual.html',{'datos':ventas}, context_instance=RequestContext(request))

我无法使用此视图。

【问题讨论】:

  • 我懂西班牙语,但我想如果你能用英语发布代码,人们会喜欢它。
  • 谢谢,下次采纳你的建议;)
  • 代码是英文的,只是变量不是。这应该不是什么大问题。
  • @gersande 我同意你的看法...你知道如何获得已售产品的总数吗?
  • @gersande :) ok 祝你学习 Python 好运,它是一门很棒的编程语言

标签: python django aggregation


【解决方案1】:

ventas = Ventas.objects.aggregate(total_payment=Sum('totalventa')) 如果您在各自的数据库中有数据,我认为它应该可以完美运行。 输出将是一个字典。 如{'total_payment': Decimal('xx.xx')} 格式。

def ventas_anio(请求):

ventas = Ventas.objects.all().aggregate(total_payment=Sum('totalventa'))
sum_ventas = ventas['total_payment']
return render_to_response('ventasanual.html',{'datos':sum_ventas}, context_instance=RequestContext(request))

【讨论】:

  • 你好,谢谢..但我收到一个错误“'int' object is not iterable”:(
  • 能否请您跳过错误堆栈跟踪,以便我可以帮助您更多地挖掘根本原因。
猜你喜欢
  • 1970-01-01
  • 2021-10-23
  • 1970-01-01
  • 1970-01-01
  • 2012-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-21
相关资源
最近更新 更多