DRF APIView pagination
У меня есть APIView и метод get, и мне нужно добавить пагинацию, если параметры запроса limit
/ offset
не существуют.
from rest_framework.views import APIView
from rest_framework.pagination import LimitOffsetPagination
class ClientListAPIView(APIView, LimitOffsetPagination):
def get(self, request: Request, format=None) -> Response:
clients = self.paginate_queryset(Client.objects.all(), request, view=self)
clients_serializer = ClientListSerializer(clients, many=True)
return Response(clients_serializer.data)
Он работает с limit
, с limit
и offset
вместе, но не работает только для offset
, или если параметры запроса пустые
GET /clients?limit=3
- работает
GET /clients?limit=3&offset=1
- работает
GET /clients?offset=1
- НЕ РАБОТАЕТ, возвращает пустой список
GET /clients
- также возвращает пустой список
UPDATE: если limit
и offset
пустые, мне нужно вернуть определенное количество клиентов. Например, пусть это будет 100