mirror of
https://github.com/django/django.git
synced 2025-08-04 19:08:28 +00:00
Fixed #6933 -- Added support for searching against quoted phrases in ModelAdmin.search_fields.
This commit is contained in:
parent
8a902b7ee6
commit
26a413507a
4 changed files with 41 additions and 8 deletions
|
@ -1309,14 +1309,18 @@ subclass::
|
|||
WHERE (first_name ILIKE '%john%' OR last_name ILIKE '%john%')
|
||||
AND (first_name ILIKE '%lennon%' OR last_name ILIKE '%lennon%')
|
||||
|
||||
The search query can contain quoted phrases with spaces. For example, if a
|
||||
user searches for ``"john winston"`` or ``'john winston'``, Django will do
|
||||
the equivalent of this SQL ``WHERE`` clause:
|
||||
|
||||
.. code-block:: sql
|
||||
|
||||
WHERE (first_name ILIKE '%john winston%' OR last_name ILIKE '%john winston%')
|
||||
|
||||
If you don't want to use ``icontains`` as the lookup, you can use any
|
||||
lookup by appending it the field. For example, you could use :lookup:`exact`
|
||||
by setting ``search_fields`` to ``['first_name__exact']``.
|
||||
|
||||
Beware that because query terms are split and ANDed as described earlier,
|
||||
searching with :lookup:`exact` only works with a single search word since
|
||||
two or more words can't all be an exact match unless all words are the same.
|
||||
|
||||
Some (older) shortcuts for specifying a field lookup are also available.
|
||||
You can prefix a field in ``search_fields`` with the following characters
|
||||
and it's equivalent to adding ``__<lookup>`` to the field:
|
||||
|
@ -1334,6 +1338,10 @@ subclass::
|
|||
:meth:`ModelAdmin.get_search_results` to provide additional or alternate
|
||||
search behavior.
|
||||
|
||||
.. versionchanged:: 3.2
|
||||
|
||||
Support for searching against quoted phrases with spaces was added.
|
||||
|
||||
.. attribute:: ModelAdmin.show_full_result_count
|
||||
|
||||
Set ``show_full_result_count`` to control whether the full count of objects
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue