summaryrefslogtreecommitdiff
path: root/django/contrib/admin/options.py
diff options
context:
space:
mode:
Diffstat (limited to 'django/contrib/admin/options.py')
-rw-r--r--django/contrib/admin/options.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/django/contrib/admin/options.py b/django/contrib/admin/options.py
index 49c816dc9e..b0635669e9 100644
--- a/django/contrib/admin/options.py
+++ b/django/contrib/admin/options.py
@@ -436,7 +436,9 @@ class BaseModelAdmin(metaclass=forms.MediaDefiningClass):
else self.get_list_display(request)
)
- def lookup_allowed(self, lookup, value):
+ # RemovedInDjango60Warning: when the deprecation ends, replace with:
+ # def lookup_allowed(self, lookup, value, request):
+ def lookup_allowed(self, lookup, value, request=None):
from django.contrib.admin.filters import SimpleListFilter
model = self.model
@@ -482,7 +484,12 @@ class BaseModelAdmin(metaclass=forms.MediaDefiningClass):
# Either a local field filter, or no fields at all.
return True
valid_lookups = {self.date_hierarchy}
- for filter_item in self.list_filter:
+ # RemovedInDjango60Warning: when the deprecation ends, replace with:
+ # for filter_item in self.get_list_filter(request):
+ list_filter = (
+ self.get_list_filter(request) if request is not None else self.list_filter
+ )
+ for filter_item in list_filter:
if isinstance(filter_item, type) and issubclass(
filter_item, SimpleListFilter
):