From bebbbb7af096ecffc0d7585617fdfacb196bc7c2 Mon Sep 17 00:00:00 2001 From: Nuno Maltez Date: Mon, 16 Jul 2012 19:52:31 +0300 Subject: Fixed #18056 - Cleared aggregations on DateQuery.add_date_select Cleared aggregations on add_date_select method so only distinct dates are returned when dealing with a QuerySet that contained aggregations. That would cause the query set to return repeated dates because it would look for distinct (date kind, aggregation) pairs. --- django/db/models/sql/subqueries.py | 2 ++ 1 file changed, 2 insertions(+) (limited to 'django/db/models/sql') diff --git a/django/db/models/sql/subqueries.py b/django/db/models/sql/subqueries.py index 5cfc984770..7b92394e90 100644 --- a/django/db/models/sql/subqueries.py +++ b/django/db/models/sql/subqueries.py @@ -8,6 +8,7 @@ from django.db.models.sql.constants import * from django.db.models.sql.datastructures import Date from django.db.models.sql.query import Query from django.db.models.sql.where import AND, Constraint +from django.utils.datastructures import SortedDict from django.utils.functional import Promise from django.utils.encoding import force_unicode @@ -205,6 +206,7 @@ class DateQuery(Query): self.select = [select] self.select_fields = [None] self.select_related = False # See #7097. + self.aggregates = SortedDict() # See 18056. self.set_extra_mask([]) self.distinct = True self.order_by = order == 'ASC' and [1] or [-1] -- cgit v1.3