accounts/utils/views.py
2024-08-03 18:32:34 +03:30

20 lines
608 B
Python

import django_filters
class FilterMixin(object):
filterset_class:django_filters.FilterSet
def get_filterset_class(self):
return self.filterset_class
def get_context_data(self, *, object_list=None, **kwargs):
context_data = super().get_context_data(**kwargs)
filter = self.get_filterset_class()(self.request.GET, queryset=self.get_queryset())
context_data['filter'] = filter
return context_data
def get_queryset(self):
qs = super().get_queryset()
qs = self.get_filterset_class()(self.request.GET, queryset=qs).qs
return qs