【问题标题】:Get time based model statistics in django在 django 中获取基于时间的模型统计信息
【发布时间】:2018-11-30 06:12:15
【问题描述】:

我知道这不是一个 django 问题,但我正在使用 django 模型并希望有一个特定于 django 的解决方案

假设我有一个这样的模型

class Foo(models.Model):
     type = models.IntegerField()
     timestamp = models.DateTimeField(auto_now_add=True)

现在最好的方法是计算分布在日期/时间上的所有类型(比如 1)对象的计数
例如:get_stat(type=1) 告诉我在12/10/201813/10/201814/10/2018 等上创建了多少对象(类型 1)...

【问题讨论】:

    标签: python django datetime model statistics


    【解决方案1】:

    我认为您需要使用group by。看到这个答案:How to query as GROUP BY in django?

    @classmethod
    def get_stat(cls, type):
        return cls.objects.filter(type=type).values('timestamp').annotate(
            count=Count('id')
        ).values('timestamp', 'count')
    

    这个函数是你的例子。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-07
      • 1970-01-01
      • 1970-01-01
      • 2011-12-04
      相关资源
      最近更新 更多