Пример #1
0
 def resolve_columns(self, row, fields=()):
     # If the results are sliced, the resultset will have an initial
     # "row number" column. Remove this column before the ORM sees it.
     if getattr(self, '_using_row_number', False):
         row = row[1:]
     values = []
     index_extra_select = len(self.query.extra_select)
     for value, field in zip_longest(row[index_extra_select:], fields):
         # print '\tfield=%s\tvalue=%s' % (repr(field), repr(value))
         if field:
             try:
                 value = self.connection.ops.convert_values(value, field)
             except ValueError:
                 pass
         values.append(value)
     return row[:index_extra_select] + tuple(values)
Пример #2
0
 def resolve_columns(self, row, fields=()):
     # If the results are sliced, the resultset will have an initial 
     # "row number" column. Remove this column before the ORM sees it.
     if getattr(self, '_using_row_number', False):
         row = row[1:]
     values = []
     index_extra_select = len(self.query.extra_select)
     for value, field in zip_longest(row[index_extra_select:], fields):
         # print '\tfield=%s\tvalue=%s' % (repr(field), repr(value))
         if field:
             try:
                 value = self.connection.ops.convert_values(value, field)
             except ValueError:
                 pass
         values.append(value)
     return row[:index_extra_select] + tuple(values)
Пример #3
0
 def resolve_columns(self, row, fields=()):
     index_start = len(list(self.query.extra_select.keys()))
     values = [self.query.convert_values(v, None, connection=self.connection) for v in row[:index_start]]
     for value, field in zip_longest(row[index_start:], fields):
         values.append(self.query.convert_values(value, field, connection=self.connection))
     return tuple(values)