diff options
| author | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2008-04-20 08:47:41 +0000 |
|---|---|---|
| committer | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2008-04-20 08:47:41 +0000 |
| commit | c43a3d78b1a7c65b903922679c76a499e484dea5 (patch) | |
| tree | 537c027c0163efde24cf51bc0d096704b0610ae5 | |
| parent | d4956cb42784770b319e5fdadd69add792c864a9 (diff) | |
queryset-refactor: Fixed db column to model field mapping for Oracle backend.
Thanks, Justin Bronn. Fixed #7036.
git-svn-id: http://code.djangoproject.com/svn/django/branches/queryset-refactor@7438 bcc190cf-cafb-0310-a4f2-bffc1f526a37
| -rw-r--r-- | django/db/backends/oracle/query.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/django/db/backends/oracle/query.py b/django/db/backends/oracle/query.py index c127ba9cfc..699398a254 100644 --- a/django/db/backends/oracle/query.py +++ b/django/db/backends/oracle/query.py @@ -28,8 +28,9 @@ def query_class(QueryClass, Database): def resolve_columns(self, row, fields=()): from django.db.models.fields import DateField, DateTimeField, \ TimeField, BooleanField, NullBooleanField, DecimalField, Field + index_start = len(self.extra_select.keys()) values = [] - for value, field in map(None, row, fields): + for value, field in map(None, row[index_start:], fields): if isinstance(value, Database.LOB): value = value.read() # Oracle stores empty strings as null. We need to undo this in @@ -111,7 +112,6 @@ def query_class(QueryClass, Database): # not get the attribute on the returned models. self.extra_select['rn'] = 'ROW_NUMBER() OVER (ORDER BY %s )' % rn_orderby sql, params= super(OracleQuery, self).as_sql(with_limits=False) - self.extra_select.pop('rn') # Constructing the result SQL, using the initial select SQL # obtained above. |
