Почему пагинация, предоставляемая django rest framework, не является последовательной?
В настоящее время я использую фреймворк Django-Rest для реализации конечных точек API. Я следую документации для реализации пагинации, мой класс пагинации выглядит так:
class Pagination(PageNumberPagination):
page_size = 10
page_size_query_param = 'page'
Я использую этот класс следующим образом:-
class QuestionList(generics.ListAPIView):
queryset = Question.objects.all().prefetch_related('tags').order_by('id')
serializer_class = QuestionSerializer
pagination_class = Pagination
На первой странице я получаю объекты с id от 1 до 10, что вполне ожидаемо. Но начиная со второй страницы, я получаю только 2 объекта на страницу (id 3 и 4 для второй страницы) и не могу найти причину такого странного поведения.
Что мне нужно сделать, чтобы пагинация была последовательной.
Я думаю, что page_size_query_param = 'page'
неправильно. Должно быть
page_size_query_param = 'size'
page_query_param = 'page'