Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Fixed review notes by Loic

  • Loading branch information...
commit b99c8d83c972786c6fcd0e84c9e5cb08c1368300 1 parent 049eebc
Anssi Kääriäinen akaariai authored
3  django/db/backends/utils.py
View
@@ -1,5 +1,6 @@
from __future__ import unicode_literals
+from collections import defaultdict
import datetime
import decimal
import hashlib
@@ -196,7 +197,7 @@ def format_number(value, max_digits, decimal_places):
return "%.*f" % (decimal_places, value)
# Map of vendor name -> map of query element class -> implementation function
-compile_implementations = {}
+compile_implementations = defaultdict(dict)
def get_implementations(vendor):
7 django/db/models/aggregates.py
View
@@ -15,9 +15,10 @@ def refs_aggregate(lookup_parts, aggregates):
default annotation names we must check each prefix of the lookup_parts
for match.
"""
- for i in range(len(lookup_parts) + 1):
- if LOOKUP_SEP.join(lookup_parts[0:i]) in aggregates:
- return aggregates[LOOKUP_SEP.join(lookup_parts[0:i])], lookup_parts[i:]
+ for n in range(len(lookup_parts) + 1):
+ level_n_lookup = LOOKUP_SEP.join(lookup_parts[0:n])
+ if level_n_lookup in aggregates:
+ return aggregates[level_n_lookup], lookup_parts[n:]
return False, ()
40 django/db/models/lookups.py
View
@@ -81,7 +81,7 @@ def as_sql(self, qn, connection):
raise NotImplementedError
-class DjangoLookup(Lookup):
+class BuiltinLookup(Lookup):
def as_sql(self, qn, connection):
lhs_sql, params = self.process_lhs(qn, connection)
field_internal_type = self.lhs.output_type.get_internal_type()
@@ -100,47 +100,47 @@ def get_rhs_op(self, connection, rhs):
default_lookups = {}
-class Exact(DjangoLookup):
+class Exact(BuiltinLookup):
lookup_name = 'exact'
default_lookups['exact'] = Exact
-class IExact(DjangoLookup):
+class IExact(BuiltinLookup):
lookup_name = 'iexact'
default_lookups['iexact'] = IExact
-class Contains(DjangoLookup):
+class Contains(BuiltinLookup):
lookup_name = 'contains'
default_lookups['contains'] = Contains
-class IContains(DjangoLookup):
+class IContains(BuiltinLookup):
lookup_name = 'icontains'
default_lookups['icontains'] = IContains
-class GreaterThan(DjangoLookup):
+class GreaterThan(BuiltinLookup):
lookup_name = 'gt'
default_lookups['gt'] = GreaterThan
-class GreaterThanOrEqual(DjangoLookup):
+class GreaterThanOrEqual(BuiltinLookup):
lookup_name = 'gte'
default_lookups['gte'] = GreaterThanOrEqual
-class LessThan(DjangoLookup):
+class LessThan(BuiltinLookup):
lookup_name = 'lt'
default_lookups['lt'] = LessThan
-class LessThanOrEqual(DjangoLookup):
+class LessThanOrEqual(BuiltinLookup):
lookup_name = 'lte'
default_lookups['lte'] = LessThanOrEqual
-class In(DjangoLookup):
+class In(BuiltinLookup):
lookup_name = 'in'
def get_db_prep_lookup(self, value, connection):
@@ -158,27 +158,27 @@ def get_rhs_op(self, connection, rhs):
default_lookups['in'] = In
-class StartsWith(DjangoLookup):
+class StartsWith(BuiltinLookup):
lookup_name = 'startswith'
default_lookups['startswith'] = StartsWith
-class IStartsWith(DjangoLookup):
+class IStartsWith(BuiltinLookup):
lookup_name = 'istartswith'
default_lookups['istartswith'] = IStartsWith
-class EndsWith(DjangoLookup):
+class EndsWith(BuiltinLookup):
lookup_name = 'endswith'
default_lookups['endswith'] = EndsWith
-class IEndsWith(DjangoLookup):
+class IEndsWith(BuiltinLookup):
lookup_name = 'iendswith'
default_lookups['iendswith'] = IEndsWith
-class Between(DjangoLookup):
+class Between(BuiltinLookup):
def get_rhs_op(self, connection, rhs):
return "BETWEEN %s AND %s" % (rhs, rhs)
@@ -193,7 +193,7 @@ class Range(Between):
default_lookups['range'] = Range
-class DateLookup(DjangoLookup):
+class DateLookup(BuiltinLookup):
def process_lhs(self, qn, connection):
lhs, params = super(DateLookup, self).process_lhs(qn, connection)
@@ -241,7 +241,7 @@ class Second(DateLookup):
default_lookups['second'] = Second
-class IsNull(DjangoLookup):
+class IsNull(BuiltinLookup):
lookup_name = 'isnull'
def as_sql(self, qn, connection):
@@ -253,16 +253,16 @@ def as_sql(self, qn, connection):
default_lookups['isnull'] = IsNull
-class Search(DjangoLookup):
+class Search(BuiltinLookup):
lookup_name = 'search'
default_lookups['search'] = Search
-class Regex(DjangoLookup):
+class Regex(BuiltinLookup):
lookup_name = 'regex'
default_lookups['regex'] = Regex
-class IRegex(DjangoLookup):
+class IRegex(BuiltinLookup):
lookup_name = 'iregex'
default_lookups['iregex'] = IRegex
Please sign in to comment.
Something went wrong with that request. Please try again.