zoukankan      html  css  js  c++  java
  • Restframework 分页器 Pagnation 组件实例-5

    分页逻辑

    from rest_framework.pagination import PageNumberPagination
    
    class BookView(APIView):
    
        # authentication_classes = [UserAuth]
    
        # permission_classes = [SVIPPermission]
    
        # throttle_classes = [VisitThrottle]
    
        # renderer_classes = []
    
        def get(self,request):
            '''
            查看所有书籍
            :param request:
            :return:
            '''
    
            class MyPageNumberPagination(PageNumberPagination):
                page_size=2
                page_query_param="page_num"
                page_size_query_param="size"
                max_page_size=5
    
    
            print(request.user,request.auth)
    
            book_list=Book.objects.all()
    
            pnp=MyPageNumberPagination()
    
            paged_book_list=pnp.paginate_queryset(book_list,request)
    
            serializer=BookSerializer(paged_book_list,many=True)
    
            return Response(serializer.data)
    
        def post(self,request):
            '''
            添加一条书籍
            :param request:
            :return:
            '''
            print(request.data)
    
            serializer=BookSerializer(data=request.data,many=False)
    
            if serializer.is_valid():
                serializer.save() # create操作
    
                return Response(serializer.data)
            else:
                return Response(serializer.errors)
    

      

     

  • 相关阅读:
    简单工厂设计模式
    MVC备忘
    在MVC后台代码中想实现删除时弹出"确认删除"效果
    集合
    嵌套
    整理 补课内容
    百鸡百钱
    ////输入一个100以内的数,判断是不是正整数;
    课后题 5 6
    课后题3,4
  • 原文地址:https://www.cnblogs.com/mengbin0546/p/9687410.html
Copyright © 2011-2022 走看看