Skip to content

Commit df821d7

Browse files
authored
fix: filter media loading (#1226)
1 parent 62959b2 commit df821d7

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

src/unfold/admin.py

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
from django.db.models import BLANK_CHOICE_DASH, Model
1010
from django.http import HttpRequest, HttpResponse
1111
from django.shortcuts import redirect
12+
from django.template.response import TemplateResponse
1213
from django.urls import URLPattern, path
1314
from django.utils.safestring import mark_safe
1415
from django.utils.translation import gettext_lazy as _
@@ -56,12 +57,12 @@ class ModelAdmin(BaseModelAdminMixin, ActionModelAdminMixin, BaseModelAdmin):
5657
warn_unsaved_form = False
5758
checks_class = UnfoldModelAdminChecks
5859

59-
@property
60-
def media(self):
61-
media = super().media
60+
def changelist_view(
61+
self, request: HttpRequest, extra_context: Optional[dict[str, str]] = None
62+
) -> TemplateResponse:
6263
additional_media = forms.Media()
6364

64-
for filter in self.list_filter:
65+
for filter in self.get_list_filter(request):
6566
if (
6667
isinstance(filter, (tuple, list))
6768
and hasattr(filter[1], "form_class")
@@ -71,7 +72,16 @@ def media(self):
7172
elif hasattr(filter, "form_class") and hasattr(filter.form_class, "Media"):
7273
additional_media += forms.Media(filter.form_class.Media)
7374

74-
return media + additional_media
75+
if not extra_context:
76+
extra_context = {}
77+
78+
extra_context.update(
79+
{
80+
"media": self.media + additional_media,
81+
}
82+
)
83+
84+
return super().changelist_view(request, extra_context)
7585

7686
def get_fieldsets(self, request: HttpRequest, obj=None) -> FieldsetsType:
7787
if not obj and self.add_fieldsets:

0 commit comments

Comments
 (0)