diff options
| author | Sarah Boyce <42296566+sarahboyce@users.noreply.github.com> | 2024-01-05 14:08:25 +0100 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2024-01-08 09:21:54 +0100 |
| commit | a9094ec1f43dca7f2a649327afcd5e6226b4959c (patch) | |
| tree | d56a57d3e6a610e27ee90d24d855814118d125bd /django/contrib/admin | |
| parent | cc56c22a24ef717cc3111e92ca146136fa518d55 (diff) | |
Fixed #35087 -- Reallowed filtering against foreign keys not listed in ModelAdmin.list_filters.
Regression in f80669d2f5a5f1db9e9b73ca893fefba34f955e7.
Diffstat (limited to 'django/contrib/admin')
| -rw-r--r-- | django/contrib/admin/options.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/django/contrib/admin/options.py b/django/contrib/admin/options.py index af69f4cb3b..e3703f5866 100644 --- a/django/contrib/admin/options.py +++ b/django/contrib/admin/options.py @@ -467,7 +467,8 @@ class BaseModelAdmin(metaclass=forms.MediaDefiningClass): relation_parts = [] prev_field = None - for part in lookup.split(LOOKUP_SEP): + parts = lookup.split(LOOKUP_SEP) + for part in parts: try: field = model._meta.get_field(part) except FieldDoesNotExist: @@ -491,7 +492,7 @@ class BaseModelAdmin(metaclass=forms.MediaDefiningClass): prev_field = field model = field.path_infos[-1].to_opts.model - if not relation_parts: + if not relation_parts or len(parts) == 1: # Either a local field filter, or no fields at all. return True valid_lookups = {self.date_hierarchy} |
