Добавление пагинации в Django Rest Framework
Я пытаюсь использовать PageNumberPagination
в DRF и для этого я изменил файл settings.py следующим образом:
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework_simplejwt.authentication.JWTAuthentication',
),
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
# 'PAGE_SIZE':10
}
и views.py
from rest_framework.pagination import PageNumberPagination
class GrnListAPIView(generics.ListAPIView):
serializer_class = GrnListSerializer
pagination_class = PageNumberPagination
permission_classes = (permissions.IsAuthenticated, GRNViewPermission)
def get_queryset(self):
return Grn.objects.all()
теперь, когда я пытаюсь получить доступ к данным, используя URL:
http://localhost:8000/grns/?page=1&page_size=10
Это дает мне все данные, а не возвращает 10 объектов. Он работает нормально, когда я не комментирую PAGE_SIZE
, но возвращает только 10 значений на страницу, что понятно, поскольку я указал
page_size=10
в моих параметрах, но когда я меняю его на 20 или 30, он все равно возвращает то же количество данных вместо 20 или 30 объектов.