restframework 使用CustomPageNumberPagination实现分页

Posted 信奉上帝的小和尚

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了restframework 使用CustomPageNumberPagination实现分页相关的知识,希望对你有一定的参考价值。

from rest_framework.pagination import PageNumberPagination


class CustomPageNumberPagination(PageNumberPagination):
    # page_query_param = "" # 地址上面代表页码的变量名,默认为page
    page_size = 5  # 每一页显示的数据量,没有设置页码,则不进行分页
    # 允许客户端通过指定的参数名来设置每一页数据量的大小,默认是size
    page_size_query_param = "size"
    max_page_size = 20  # 限制每一页最大展示的数据量
class CourseListApiView(ListAPIView):
    # 指定过滤和排序类
    filter_backends = [DjangoFilterBackend, OrderingFilter, ]
    # 指定过滤字段
    filter_fields = (\'course_category\',)
    # 指定排序字段
    ordering_fields = (\'id\', \'students\', \'price\')
    queryset = Course.objects.filter(is_show=True).order_by(\'orders\', \'-id\')
    serializer_class = CourseSerializer
    pagination_class = CustomPageNumberPagination

测试

 

以上是关于restframework 使用CustomPageNumberPagination实现分页的主要内容,如果未能解决你的问题,请参考以下文章

[Python自学] restframework

nodejs express restful api插件restframework-express使用

django使用restframework序列化查询集合(querryset)

RestFramework

django-restframework 序列化详解

Django Restframework.1