https://www.django-rest-framework.org/api-guide/pagination/#pagination
Setting the pagination style
The pagination style may be set globally, using the DEFAULT_PAGINATION_CLASS and PAGE_SIZE setting keys. For example, to use the built-in limit/offset pagination, you would do something like this:
# config/settings.py
REST_FRAMEWORK = {
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.LimitOffsetPagination',
'PAGE_SIZE': 100
}
작성하는 즉시 pagination이 생긴 것을 확인할 수 있다. (이 설정은 globally 하게 적용됩니다)
LimitOffsetPagination을 사용하고, page size를 100으로 설정했다. (100개가 1 페이지)
정보도, count, next(설정한 page size에 따라 limit, offset 결정)와 previous가 존재하고, 정보는 results에 담긴 것을 확인할 수 있다.
Setting the pagination style
현재 세팅을 보면 LimitOffsetPagination을 사용하고 있다. 다른 pagination도 존재한다.
(https://www.django-rest-framework.org/api-guide/pagination/#pagination)
문서를 보면 PageNumberPagination, CursorPagination도 존재하고, pagination을 커스터마이징할 수도 있나보다.
REST_FRAMEWORK = {
"DEFAULT_PAGINATION_CLASS": "rest_framework.pagination.PageNumberPagination",
"PAGE_SIZE": 10,
}
'Django, Flask > 🔫 Django REST framework (DRF)' 카테고리의 다른 글
DRF ViewSet : ModelViewSet로 ViewSet 맛보기 (0) | 2020.06.16 |
---|---|
DRF class based view : GenericView (0) | 2020.06.16 |
DRF serializers를 통해 장고 객체를 json으로 만들기 (1) | 2020.06.16 |
REST API 설계 원칙 (0) | 2020.06.16 |