Django查询去年同一周

时间:2017-10-17 20:08:02

标签: django django-models django-views

我需要比较同一周的事件总数(isocalendar),年复一年。

class MyModel(models.Model):
    date = models.DateTime(...
    hits = models.IntegerField(...

我去年,上个月,去年同月,去年同一天使用的变体进行了分类:

same_month_last_year = MyModel.objects.filter(date__month = (datetime.datetime.now().month), date__year = (datetime.datetime.now() - relativedelta(years = 1)).year).aggregate(total=Sum('hits')['total']

我没有看到等同的一周'功能。我可以在等式的右边使用.isocalendar()[1],但左边没有任何帮助。有任何想法吗?感谢。

1 个答案:

答案 0 :(得分:2)

Django 1.11添加了week filter。你能用吗?

如果没有,您可以查看源代码并选择它。

作为最后的手段,您可以使用Python计算去年同一周的日期范围,然后将这些日期作为过滤器传递给Django查询。