| 123456789101112131415161718192021222324252627 |
- # coding:utf-8
- from rest_framework.response import Response
- from rest_framework.pagination import PageNumberPagination
- class CustomPagination(PageNumberPagination):
- page_size = 10
- max_page_size = 20
- page_size_query_param = 'size'
- page_query_param = 'page'
- def get_paginated_response(self, data):
- next = self.page.next_page_number() if self.page.has_next() else 1
- previous = self.page.previous_page_number() if self.page.has_previous() else 1
- return Response({
- 'paging': {
- 'next': next,
- 'previous': previous,
- 'total': self.page.paginator.count,
- 'page': self.page.number,
- 'page_size': self.page.paginator.per_page,
- 'total_page': self.page.paginator.num_pages
- },
- 'data': data
- })
|