queryset - Django Query la misma semana del año pasado
orm django queries (1)
Necesito comparar sumas de eventos en la misma semana (isocalendar), año tras año.
class MyModel(models.Model):
date = models.DateTime(...
hits = models.IntegerField(...
Lo tengo ordenado para el año pasado, el mes pasado, el mismo mes del año pasado, el mismo día del año pasado usando variaciones en:
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'']
No veo una función de ''semana'' equivalente. Puedo usar .isocalendar () [1] en el lado derecho de la ecuación, pero eso no es de ayuda a la izquierda. ¿Algunas ideas? Gracias.
Django 1.11 agregó un filtro de semana . Puedes usar eso?
De lo contrario, es posible que pueda ver el código fuente y seleccionarlo con precisión.
Como último recurso, puede usar Python para calcular el rango de fechas para la misma semana del año pasado, y luego pasar esas fechas como filtros a la consulta de Django.