相关疑难解决方法(0)

Django:按日期分组(日,月,年)

我有一个像这样的简单模型:

class Order(models.Model):
    created = model.DateTimeField(auto_now_add=True)
    total = models.IntegerField() # monetary value
Run Code Online (Sandbox Code Playgroud)

我想逐个输出:

  • 一个月有多少销售额(COUNT)
  • 合并值(SUM)

我不确定攻击它的最佳方法是什么.我已经看到了一些相当可怕的额外选择查询,但我简单的想法告诉我,我可能会更好的只是迭代数字,从任意的开始年/月开始计算直到我到达当前月份,抛弃简单查询过滤该月份.更多数据库工作 - 减少开发人员的压

什么对你最有意义?有没有一种很好的方法可以撤回快速的数据表?或者我的脏方法可能是最好的主意?

我正在使用Django 1.3.不确定他们最近是否添加了更好的方式GROUP_BY.

django django-aggregation

78
推荐指数
3
解决办法
4万
查看次数

在Django中按日期计算记录数

我有一个类似于以下的模型:

class Review(models.Model):
    venue = models.ForeignKey(Venue, db_index=True)
    review = models.TextField()  
    datetime_created = models.DateTimeField(default=datetime.now)
Run Code Online (Sandbox Code Playgroud)

我想查询数据库以获得按天分组的场地的评论总数.MySQL查询将是:

SELECT DATE(datetime_created), count(id) 
FROM REVIEW 
WHERE venue_id = 2
GROUP BY DATE(datetime_created);
Run Code Online (Sandbox Code Playgroud)

在Django中实现这一目标的最佳方法是什么?我可以用

Review.objects.filter(venue__pk=2)
Run Code Online (Sandbox Code Playgroud)

并在视图中解析结果,但这对我来说似乎不对.

python django django-models django-queryset django-1.1

48
推荐指数
4
解决办法
2万
查看次数