使用Django汇总报告

时间:2011-09-29 16:29:29

标签: python django django-models django-templates django-views

我正在尝试制作一个表格,显示计划中每个金融机构的总到期金额。

计划是我用于人的术语。因此每个人都可以进行多项投资。我在创建一个能够正确执行此操作的表时遇到了问题。

目前我有一份报告显示按到期日分类的每项投资,即2011,2012等。

在底部我想放置此摘要表,但由于能够进行多次投资,我的查询会显示每个金融机构的重复项。

我当前的查询:

list = Investment.objects.all().filter(plan = plan).order_by('financial_institution').filter(maturity_date__gte= '%s-1-1' % current_year).distinct()

这将输出:

  • 道明银行$ 10k
  • 道明银行$ 10k
  • Scotia Bank $ 10k
  • Etc

但我想:

  • 道明银行$ 20k
  • Scotia Bank $ 10k

1 个答案:

答案 0 :(得分:5)

因此,您希望汇总计划的投资价值:

from django.db.models import Sum
my_plan.investment_set.filter(
    maturity_date__gte=whenever
).values('financial_institution').annotate(Sum('value'))