django rest framework的分页功能
时间: 2023-07-29 12:11:32 浏览: 170
Django REST framework 提供了分页功能,可以将返回的数据进行分页处理,让数据更加易于管理。
使用分页功能需要进行以下步骤:
1. 在 settings.py 文件中添加 REST_FRAMEWORK 配置:
```python
REST_FRAMEWORK = {
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
'PAGE_SIZE': 10
}
```
其中,DEFAULT_PAGINATION_CLASS 指定分页类,这里使用 PageNumberPagination,PAGE_SIZE 指定每页显示的数据条数。
2. 在视图中使用分页功能:
```python
from rest_framework.pagination import PageNumberPagination
from rest_framework.views import APIView
from rest_framework.response import Response
class MyPagination(PageNumberPagination):
page_size = 10
page_size_query_param = 'page_size'
max_page_size = 100
class MyView(APIView):
def get(self, request):
data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
paginator = MyPagination()
result_page = paginator.paginate_queryset(data, request)
return paginator.get_paginated_response(result_page)
```
这里定义了一个名为 MyPagination 的分页类,指定了 page_size、page_size_query_param 和 max_page_size 三个参数。然后在 MyView 中使用 MyPagination 进行分页处理,并返回分页结果。
以上就是 Django REST framework 的分页功能的使用方法。
阅读全文