[py3] Removed unnecessary calls to .keys()

when computing the length of a dictionary. This fails on Python 3.
This commit is contained in:
Aymeric Augustin 2012-08-14 14:09:23 +02:00
parent 2ae58b20ec
commit 9299dc42ed
4 changed files with 4 additions and 4 deletions

View File

@ -3,7 +3,7 @@ from django.db.models.sql import compiler
class SQLCompiler(compiler.SQLCompiler):
def resolve_columns(self, row, fields=()):
values = []
index_extra_select = len(self.query.extra_select.keys())
index_extra_select = len(self.query.extra_select)
for value, field in map(None, row[index_extra_select:], fields):
if (field and field.get_internal_type() in ("BooleanField", "NullBooleanField") and
value in (0, 1)):

View File

@ -10,7 +10,7 @@ class SQLCompiler(compiler.SQLCompiler):
rn_offset = 1
else:
rn_offset = 0
index_start = rn_offset + len(self.query.extra_select.keys())
index_start = rn_offset + len(self.query.extra_select)
values = [self.query.convert_values(v, None, connection=self.connection)
for v in row[rn_offset:index_start]]
for value, field in map(None, row[index_start:], fields):

View File

@ -779,7 +779,7 @@ class Model(six.with_metaclass(ModelBase, object)):
lookup_kwargs[str(field_name)] = lookup_value
# some fields were skipped, no reason to do the check
if len(unique_check) != len(lookup_kwargs.keys()):
if len(unique_check) != len(lookup_kwargs):
continue
qs = model_class._default_manager.filter(**lookup_kwargs)

View File

@ -786,7 +786,7 @@ class SQLCompiler(object):
row = self.resolve_columns(row, fields)
if has_aggregate_select:
aggregate_start = len(self.query.extra_select.keys()) + len(self.query.select)
aggregate_start = len(self.query.extra_select) + len(self.query.select)
aggregate_end = aggregate_start + len(self.query.aggregate_select)
row = tuple(row[:aggregate_start]) + tuple([
self.query.resolve_aggregate(value, aggregate, self.connection)