[1.10.x] Fixed #26002 -- Explained ModelAdmin.get_search_results() example.
Backport of c9d0a0f7f47c8496a9d8b0cfda94e2ef118d9ab3 from master
This commit is contained in:
parent
f683bba6f6
commit
9687004538
@ -1395,7 +1395,7 @@ templates used by the :class:`ModelAdmin` views:
|
|||||||
implemented by your search method may introduce duplicates into the results,
|
implemented by your search method may introduce duplicates into the results,
|
||||||
and return ``True`` in the second element of the return value.
|
and return ``True`` in the second element of the return value.
|
||||||
|
|
||||||
For example, to enable search by integer field, you could use::
|
For example, to search by ``name`` and ``age``, you could use::
|
||||||
|
|
||||||
class PersonAdmin(admin.ModelAdmin):
|
class PersonAdmin(admin.ModelAdmin):
|
||||||
list_display = ('name', 'age')
|
list_display = ('name', 'age')
|
||||||
@ -1411,6 +1411,11 @@ templates used by the :class:`ModelAdmin` views:
|
|||||||
queryset |= self.model.objects.filter(age=search_term_as_int)
|
queryset |= self.model.objects.filter(age=search_term_as_int)
|
||||||
return queryset, use_distinct
|
return queryset, use_distinct
|
||||||
|
|
||||||
|
This implementation is more efficient than ``search_fields =
|
||||||
|
('name', '=age')`` which results in a string comparison for the numeric
|
||||||
|
field, for example ``... OR UPPER("polls_choice"."votes"::text) = UPPER('4')``
|
||||||
|
on PostgreSQL.
|
||||||
|
|
||||||
.. method:: ModelAdmin.save_related(request, form, formsets, change)
|
.. method:: ModelAdmin.save_related(request, form, formsets, change)
|
||||||
|
|
||||||
The ``save_related`` method is given the ``HttpRequest``, the parent
|
The ``save_related`` method is given the ``HttpRequest``, the parent
|
||||||
|
Loading…
x
Reference in New Issue
Block a user