Coverage for backend/core/pagination.py: 83%

6 statements  

« prev     ^ index     » next       coverage.py v7.10.7, created at 2025-11-06 23:27 +0000

1from rest_framework import pagination 

2from rest_framework.response import Response 

3 

4class ViewSetPagination(pagination.PageNumberPagination): 

5 """ 

6 Extends PageNumberPagination to include total pages and page size in the pagination response. 

7 

8 The `page_size` attribute sets the default number of items per page. 

9 """ 

10 

11 page_size = 20 

12 

13 def get_paginated_response(self, data): 

14 return Response({ 

15 'next': self.get_next_link(), 

16 'previous': self.get_previous_link(), 

17 'pages': self.page.paginator.num_pages, 

18 'count': self.page.paginator.count, 

19 'page_size': self.page_size, 

20 'results': data 

21 })