Hmm, você está usando
Count , você deve usar Sum , e values() irá determinar o que vai para GROUP BY então você deve usar values('datetime') só. Seu queryset deve ser algo assim:from django.db.models import Sum
values = self.model.objects.filter(
datetime__range=(self.dates[0], self.dates[1])
).values('datetime').annotate(data_sum=Sum('data'))
embora eu não tenha tanta certeza sobre a ordem do
filter() , então pode ser isso:values = self.model.objects.values('datetime').annotate(data_sum=Sum('data')).filter(
datetime__range=(self.dates[0], self.dates[1])
)
Acho que você gostaria de tentar os dois então. Se você quiser ver a consulta bruta desse conjunto de consultas, use
Queryset.query :print self.model.objects.filter(
datetime__range=(self.dates[0], self.dates[1])
).values('datetime').annotate(data_sum=Sum('data')).query.__str__()
Assim, você pode ter certeza de obter a consulta certa.
Espero que ajude.