PaginatorSet

时间:2023-03-09 08:26:58
PaginatorSet

from django.core.paginator import Paginator, EmptyPage class PaginatorSet: def __init__(self, limit=30):
self._limit = limit def get(self, request, query_set): try:
limit = int(request.GET.get('limit', self._limit))
offset = int(request.GET.get('offset', 1))
except ValueError:
limit = self._limit
offset = 1 query_set_pages = Paginator(query_set, limit, allow_empty_first_page=True) try:
current_page = query_set_pages.page(offset)
except EmptyPage:
current_page = query_set_pages.page(query_set_pages.num_pages) return {
'current_page': current_page,
'num_pages': query_set_pages.num_pages
}