我知道这不是一个django问题,但我正在处理django模型,希望有一个特定于django 的解决方案
假设我有一个像这样的模型
class Foo(models.Model):
type = models.IntegerField()
timestamp = models.DateTimeField(auto_now_add=True)
现在,什么是最好的方法来统计日期/时间上所有类型(比如1(的对象
例如:get_stat(type=1)
向我提供了在12/10/2018
、13/10/2018
、14/10/2018
等上创建了多少对象(类型1(的信息…
我认为您需要使用group by
。请参阅以下答案:如何在django中查询为GROUP BY?
@classmethod
def get_stat(cls, type):
return cls.objects.filter(type=type).values('timestamp').annotate(
count=Count('id')
).values('timestamp', 'count')
这个函数就是您的例子。