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)
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)