自定義分頁類
class CustomPagination(pagination.PageNumberPagination):
def get_paginated_response(self, data):
return Response(OrderedDict([
('count', self.page.paginator.count),
('next', self.get_next_link()),
('previous', self.get_previous_link()),
('name__count', self.get_my_count('name').get('name__count')),
('role_count', self.get_my_count('role').get('role__count')),
('results', data),
]))
def get_my_count(self, val):
return self.page.paginator.object_list.aggregate(Count(val))
page_size = 10
page_size_query_param = 'pagesize'
max_page_size = 1000