diff options
| author | Stanislav Volyk <max.begemot@gmail.com> | 2023-01-25 21:53:38 +0200 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2023-01-30 11:58:06 +0100 |
| commit | 7217c11eba6175023fff859cd7b3dd6c94690a0d (patch) | |
| tree | 62dd9e3a2f7091d76e0ae6bf4dd04d4fd440f053 /tests/admin_changelist/admin.py | |
| parent | 5159e05e40df304018a0704c98e310e801e947f8 (diff) | |
[4.2.x] Fixed #34283 -- Escaped title in admin's changelist filters.
Regression in 27aa7035f57f0db30b6632e4274e18b430906799.
Backport of 20a0850099340fb4cb8df0e4441e5019b2cbd1ea from main
Diffstat (limited to 'tests/admin_changelist/admin.py')
| -rw-r--r-- | tests/admin_changelist/admin.py | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/tests/admin_changelist/admin.py b/tests/admin_changelist/admin.py index 67187f5b79..8ffc45e391 100644 --- a/tests/admin_changelist/admin.py +++ b/tests/admin_changelist/admin.py @@ -3,7 +3,7 @@ from django.contrib.auth.admin import UserAdmin from django.contrib.auth.models import User from django.core.paginator import Paginator -from .models import Band, Child, Event, Parent, Swallow +from .models import Band, Child, Event, Parent, ProxyUser, Swallow site = admin.AdminSite(name="admin") @@ -185,3 +185,24 @@ class EmptyValueChildAdmin(admin.ModelAdmin): @admin.display(empty_value="†") def age_display(self, obj): return obj.age + + +class UnescapedTitleFilter(admin.SimpleListFilter): + title = "It's OK" + parameter_name = "is_active" + + def lookups(self, request, model_admin): + return [("yes", "yes"), ("no", "no")] + + def queryset(self, request, queryset): + if self.value() == "yes": + return queryset.filter(is_active=True) + else: + return queryset.filter(is_active=False) + + +class CustomUserAdmin(UserAdmin): + list_filter = [UnescapedTitleFilter] + + +site.register(ProxyUser, CustomUserAdmin) |
