fix: ordering
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
from django.conf import settings
|
||||
from django.core.paginator import Paginator
|
||||
|
||||
|
||||
class FilteredQuerysetMixin:
|
||||
queryset = None
|
||||
filter_class = None
|
||||
|
||||
def get_filter_class(self):
|
||||
return self.filter_class
|
||||
|
||||
def get_queryset(self):
|
||||
filter_cls = self.get_filter_class()
|
||||
filter_obj = filter_cls(self.request.GET)
|
||||
filter_obj.is_valid()
|
||||
qs = filter_obj.filter_queryset(self.queryset)
|
||||
return qs
|
||||
|
||||
|
||||
class PaginatedQuerysetMixin:
|
||||
objects_per_page = settings.ITEMS_PER_PAGE or 20
|
||||
|
||||
def get_paginated_queryset(self, qs):
|
||||
paginator = Paginator(qs, self.objects_per_page)
|
||||
page = self.request.GET.get("page", 1)
|
||||
qs = paginator.get_page(page)
|
||||
return qs
|
||||
Reference in New Issue
Block a user