Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

reverted changes from [1534] and [1536] regarding ticket #966

git-svn-id: http://code.djangoproject.com/svn/django/trunk@1541 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit c464e57da93ffd62261317abfb7a36ec23ddab64 1 parent e19edfb
Georg Bauer authored
View
6 django/core/db/backends/ado_mssql.py
@@ -132,12 +132,6 @@ def get_relations(cursor, table_name):
'endswith': 'LIKE %s',
'istartswith': 'LIKE %s',
'iendswith': 'LIKE %s',
- 'notcontains': 'NOT LIKE %s',
- 'notstartswith': 'NOT LIKE %s',
- 'notendswith': 'NOT LIKE %s',
- 'inotcontains': 'NOT LIKE %s',
- 'inotstartswith': 'NOT LIKE %s',
- 'inotendswith': 'NOT LIKE %s',
}
DATA_TYPES = {
View
6 django/core/db/backends/mysql.py
@@ -146,12 +146,6 @@ def get_relations(cursor, table_name):
'endswith': 'LIKE BINARY %s',
'istartswith': 'LIKE %s',
'iendswith': 'LIKE %s',
- 'notcontains': 'NOT LIKE BINARY %s',
- 'notstartswith': 'NOT LIKE BINARY %s',
- 'notendswith': 'NOT LIKE BINARY %s',
- 'inotcontains': 'NOT LIKE %s',
- 'inotstartswith': 'NOT LIKE %s',
- 'inotendswith': 'NOT LIKE %s',
}
# This dictionary maps Field objects to their associated MySQL column
View
6 django/core/db/backends/postgresql.py
@@ -151,12 +151,6 @@ def get_relations(cursor, table_name):
'endswith': 'LIKE %s',
'istartswith': 'ILIKE %s',
'iendswith': 'ILIKE %s',
- 'notcontains': 'NOT LIKE %s',
- 'notstartswith': 'NOT LIKE %s',
- 'notendswith': 'NOT LIKE %s',
- 'inotcontains': 'NOT ILIKE %s',
- 'inotstartswith': 'NOT ILIKE %s',
- 'inotendswith': 'NOT ILIKE %s',
}
# This dictionary maps Field objects to their associated PostgreSQL column
View
6 django/core/db/backends/sqlite3.py
@@ -153,12 +153,6 @@ def get_relations(cursor, table_name):
'endswith': "LIKE %s ESCAPE '\\'",
'istartswith': "LIKE %s ESCAPE '\\'",
'iendswith': "LIKE %s ESCAPE '\\'",
- 'notcontains': "NOT LIKE %s ESCAPE '\\'",
- 'notstartswith': "NOT LIKE %s ESCAPE '\\'",
- 'notendswith': "NOT LIKE %s ESCAPE '\\'",
- 'inotcontains': "NOT LIKE %s ESCAPE '\\'",
- 'inotstartswith': "NOT LIKE %s ESCAPE '\\'",
- 'inotendswith': "NOT LIKE %s ESCAPE '\\'",
}
# SQLite doesn't actually support most of these types, but it "does the right
View
6 django/core/meta/fields.py
@@ -181,13 +181,13 @@ def get_db_prep_lookup(self, lookup_type, value):
return value
elif lookup_type == 'year':
return ['%s-01-01' % value, '%s-12-31' % value]
- elif lookup_type in ('contains', 'icontains', 'notcontains', 'inotcontains'):
+ elif lookup_type in ('contains', 'icontains'):
return ["%%%s%%" % prep_for_like_query(value)]
elif lookup_type == 'iexact':
return [prep_for_like_query(value)]
- elif lookup_type in ('startswith', 'istartswith', 'notstartswith', 'inotstartswith'):
+ elif lookup_type in ('startswith', 'istartswith'):
return ["%s%%" % prep_for_like_query(value)]
- elif lookup_type in ('endswith', 'iendswith', 'notendswith', 'inotendswith'):
+ elif lookup_type in ('endswith', 'iendswith'):
return ["%%%s" % prep_for_like_query(value)]
elif lookup_type == 'isnull':
return []
View
84 docs/db-api.txt
@@ -152,51 +152,45 @@ translates (roughly) into the following SQL::
The DB API supports the following lookup types:
- ============= ==============================================================
- Type Description
- ============= ==============================================================
- exact Exact match: ``polls.get_object(id__exact=14)``.
- iexact Case-insensitive exact match:
- ``polls.get_list(slug__iexact="foo")`` matches a slug of
- ``foo``, ``FOO``, ``fOo``, etc.
- contains Case-sensitive containment test:
- ``polls.get_list(question__contains="spam")`` returns all polls
- that contain "spam" in the question. (PostgreSQL and MySQL
- only. SQLite doesn't support case-sensitive LIKE statements;
- ``contains`` will act like ``icontains`` for SQLite.)
- notcontains negated ``contains``
- icontains Case-insensitive containment test.
- inotcontains negated ``icontains``
- gt Greater than: ``polls.get_list(id__gt=4)``.
- gte Greater than or equal to.
- lt Less than.
- lte Less than or equal to.
- ne Not equal to.
- in In a given list: ``polls.get_list(id__in=[1, 3, 4])`` returns
- a list of polls whose IDs are either 1, 3 or 4.
- startswith Case-sensitive starts-with:
- ``polls.get_list(question_startswith="Would")``. (PostgreSQL
- and MySQL only. SQLite doesn't support case-sensitive LIKE
- statements; ``startswith`` will act like ``istartswith`` for
- SQLite.)
- notstartswith negated ``startswith``
- endswith Case-sensitive ends-with. (PostgreSQL and MySQL only.)
- notendswith negated ``endswith``
- istartswith Case-insensitive starts-with.
- inotstartswith negated ``istartswith``
- iendswith Case-insensitive ends-with.
- inotendswith negated ``iendswith``
- range Range test:
- ``polls.get_list(pub_date__range=(start_date, end_date))``
- returns all polls with a pub_date between ``start_date``
- and ``end_date`` (inclusive).
- year For date/datetime fields, exact year match:
- ``polls.get_count(pub_date__year=2005)``.
- month For date/datetime fields, exact month match.
- day For date/datetime fields, exact day match.
- isnull True/False; does is IF NULL/IF NOT NULL lookup:
- ``polls.get_list(expire_date__isnull=True)``.
- ============= ==============================================================
+ =========== ==============================================================
+ Type Description
+ =========== ==============================================================
+ exact Exact match: ``polls.get_object(id__exact=14)``.
+ iexact Case-insensitive exact match:
+ ``polls.get_list(slug__iexact="foo")`` matches a slug of
+ ``foo``, ``FOO``, ``fOo``, etc.
+ contains Case-sensitive containment test:
+ ``polls.get_list(question__contains="spam")`` returns all polls
+ that contain "spam" in the question. (PostgreSQL and MySQL
+ only. SQLite doesn't support case-sensitive LIKE statements;
+ ``contains`` will act like ``icontains`` for SQLite.)
+ icontains Case-insensitive containment test.
+ gt Greater than: ``polls.get_list(id__gt=4)``.
+ gte Greater than or equal to.
+ lt Less than.
+ lte Less than or equal to.
+ ne Not equal to.
+ in In a given list: ``polls.get_list(id__in=[1, 3, 4])`` returns
+ a list of polls whose IDs are either 1, 3 or 4.
+ startswith Case-sensitive starts-with:
+ ``polls.get_list(question_startswith="Would")``. (PostgreSQL
+ and MySQL only. SQLite doesn't support case-sensitive LIKE
+ statements; ``startswith`` will act like ``istartswith`` for
+ SQLite.)
+ endswith Case-sensitive ends-with. (PostgreSQL and MySQL only.)
+ istartswith Case-insensitive starts-with.
+ iendswith Case-insensitive ends-with.
+ range Range test:
+ ``polls.get_list(pub_date__range=(start_date, end_date))``
+ returns all polls with a pub_date between ``start_date``
+ and ``end_date`` (inclusive).
+ year For date/datetime fields, exact year match:
+ ``polls.get_count(pub_date__year=2005)``.
+ month For date/datetime fields, exact month match.
+ day For date/datetime fields, exact day match.
+ isnull True/False; does is IF NULL/IF NOT NULL lookup:
+ ``polls.get_list(expire_date__isnull=True)``.
+ =========== ==============================================================
Multiple lookups are allowed, of course, and are translated as "AND"s::
Please sign in to comment.
Something went wrong with that request. Please try again.