From 77fd9401bbf7b3bdc0496692e341a8ac772c503e Mon Sep 17 00:00:00 2001 From: arthur Date: Sat, 7 May 2016 21:09:58 +0200 Subject: [PATCH] Add field_name attribute for build_date_filter --- djadmin2/filters.py | 8 ++++---- djadmin2/views.py | 5 +++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/djadmin2/filters.py b/djadmin2/filters.py index 7c06c49..fe275c0 100644 --- a/djadmin2/filters.py +++ b/djadmin2/filters.py @@ -100,18 +100,18 @@ def build_list_filter(request, model_admin, queryset): return type(type_str('%sFilterSet' % queryset.model.__name__),(django_filters.FilterSet, ),filterset_dict,)(request.GET, queryset=queryset) -def build_date_filter(request, model_admin, queryset): +def build_date_filter(request, model_admin, queryset, field_name="published_date"): filterset_dict = { "year": NumericDateFilter( - name="published_date", + name=field_name, lookup_type="year", ), "month": NumericDateFilter( - name="published_date", + name=field_name, lookup_type="month", ), "day": NumericDateFilter( - name="published_date", + name=field_name, lookup_type="day", ) } diff --git a/djadmin2/views.py b/djadmin2/views.py index a881d4a..ccafd35 100644 --- a/djadmin2/views.py +++ b/djadmin2/views.py @@ -186,7 +186,7 @@ class ModelListView(AdminModel2Mixin, generic.ListView): queryset = self.build_list_filter(queryset).qs if self.model_admin.date_hierarchy: - queryset = self.build_date_filter(queryset).qs + queryset = self.build_date_filter(queryset, self.model_admin.date_hierarchy).qs queryset = self._modify_queryset_for_sort(queryset) @@ -233,7 +233,7 @@ class ModelListView(AdminModel2Mixin, generic.ListView): ) return self._list_filter - def build_date_filter(self, queryset=None): + def build_date_filter(self, queryset=None, field_name=None): if not hasattr(self, "_date_filter"): if queryset is None: queryset = self.get_queryset() @@ -241,6 +241,7 @@ class ModelListView(AdminModel2Mixin, generic.ListView): self.request, self.model_admin, queryset, + field_name ) return self._date_filter