python项目_分页功能和分类功能的实现
时间:2020-06-21 10:27:13
收藏:0
阅读:187
1.使用rest_framework提供的分页功能
#在当前子应用courses下创建一个分页器的文件paginations.py
from rest_framework.pagination import PageNumberPagination class CourseListPageNumberPagination(PageNumberPagination): """课程列表分页器""" page_query_param = "page" page_size = 5 max_page_size = 20 page_size_query_param = "size"
2.视图函数中加载声明的分页器
from .models import Course from .serializers import CourseModelSerializer from django_filters.rest_framework import DjangoFilterBackend from rest_framework.filters import OrderingFilter from .paginations import CourseListPageNumberPagination class CourseListAPIView(ListAPIView): """课程列表API接口""" queryset = Course.objects.filter(is_show=True, is_deleted=False).order_by("orders","-id") serializer_class = CourseModelSerializer filter_backends = [DjangoFilterBackend,OrderingFilter] filter_fields = (‘course_category‘,) ordering_fields = [‘id‘, ‘students‘, ‘price‘] # 指定分页器 pagination_class = CourseListPageNumberPagination
3.测试,通过postman发送请求
urls路由的写法 path("", views.CourseListAPIView.as_view()), 发送的请求格式 #范例 /user/?course_category=1&ordering="-id" 通过url进行传参
原文:https://www.cnblogs.com/jalen-123/p/13171454.html
评论(0)