4

我需要创建一个报告,我可以在其中获取一年中每个月的值。

模型.py

class Ask(models.Model):
      team = models.CharField(max_length=255)
      date = models.DateField()

团队中只有三个可能的值:A、B、C。

我如何计算每个月添加个人团队的次数?

我想为每年生成一份报告。

4

1 回答 1

3

我建议您在模型中添加month字段并在那里传递一个月save。这是帮助你运行这个:

from django.db.models import Count
Ask.objects.filter(date__year='2013').values('month', 'team').annotate(total=Count('team'))

其他方法是使用额外的参数并从日期字段中提取月份:

from django.db.models import Count
Ask.objects.filter(date__year='2013').extra(select={'month': "EXTRACT(month FROM date)"}).values('month', 'team').annotate(Count('team'))

EXTRACT方法依赖于数据库,例如在 SQLite 中不起作用

于 2013-04-05T08:19:53.520 回答