mirror of
https://github.com/django/django.git
synced 2025-07-05 18:29:11 +00:00
queryset-refactor: Repaired the dates() method with extra(select=...).xi
It was broken by [7340]. Patch from Ian Kelly. Fixed #7087. git-svn-id: http://code.djangoproject.com/svn/django/branches/queryset-refactor@7468 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
dd432cc941
commit
bb132aa395
@ -330,9 +330,10 @@ class DateQuery(Query):
|
|||||||
from django.db.backends.util import typecast_timestamp
|
from django.db.backends.util import typecast_timestamp
|
||||||
needs_string_cast = self.connection.features.needs_datetime_string_cast
|
needs_string_cast = self.connection.features.needs_datetime_string_cast
|
||||||
|
|
||||||
|
offset = len(self.extra_select)
|
||||||
for rows in self.execute_sql(MULTI):
|
for rows in self.execute_sql(MULTI):
|
||||||
for row in rows:
|
for row in rows:
|
||||||
date = row[0]
|
date = row[offset]
|
||||||
if resolve_columns:
|
if resolve_columns:
|
||||||
date = self.resolve_columns([date], fields)[0]
|
date = self.resolve_columns([date], fields)[0]
|
||||||
elif needs_string_cast:
|
elif needs_string_cast:
|
||||||
|
@ -586,7 +586,7 @@ Bug #6981
|
|||||||
>>> Tag.objects.select_related('parent').order_by('name')
|
>>> Tag.objects.select_related('parent').order_by('name')
|
||||||
[<Tag: t1>, <Tag: t2>, <Tag: t3>, <Tag: t4>, <Tag: t5>]
|
[<Tag: t1>, <Tag: t2>, <Tag: t3>, <Tag: t4>, <Tag: t5>]
|
||||||
|
|
||||||
Bug #6180, #6203
|
Bug #6180, #6203 -- dates with limits and/or counts
|
||||||
>>> Item.objects.count()
|
>>> Item.objects.count()
|
||||||
4
|
4
|
||||||
>>> Item.objects.dates('created', 'month').count()
|
>>> Item.objects.dates('created', 'month').count()
|
||||||
@ -598,6 +598,10 @@ Bug #6180, #6203
|
|||||||
>>> Item.objects.dates('created', 'day')[0]
|
>>> Item.objects.dates('created', 'day')[0]
|
||||||
datetime.datetime(2007, 12, 19, 0, 0)
|
datetime.datetime(2007, 12, 19, 0, 0)
|
||||||
|
|
||||||
|
Bug #7087 -- dates with extra select columns
|
||||||
|
>>> Item.objects.dates('created', 'day').extra(select={'a': 1})
|
||||||
|
[datetime.datetime(2007, 12, 19, 0, 0), datetime.datetime(2007, 12, 20, 0, 0)]
|
||||||
|
|
||||||
Test that parallel iterators work.
|
Test that parallel iterators work.
|
||||||
|
|
||||||
>>> qs = Tag.objects.all()
|
>>> qs = Tag.objects.all()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user