我需要创建一份报告,在其中我可以获得一年中每个月的价值。
models.py
class Ask(models.Model):
team = models.CharField(max_length=255)
date = models.DateField()
团队中只有三个可能的值:A,B,C。
如何计算个人团队每月添加的次数?
我想每年生成一份报告。
答案 0 :(得分:3)
我建议您在模型中添加month
字段,然后在save
上传递一个月。这有助于您运行:
from django.db.models import Count
Ask.objects.filter(date__year='2013').values('month', 'team').annotate(total=Count('team'))
其他方法是使用extra参数并从日期字段中提取月份:
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中不起作用