# 普通分页 from rest_framework.pagination import PageNumberPagination # from rest_framework.versioning import URLPathVersioning # class Book(ViewSetMixin, APIView): #版本控制局部使用 # versioning_class = URLPathVersioning # def get_all(self, request,*args,**kwargs): # 提供给咱的解析 # url2=request.versioning_scheme.reverse('ttt',request=request) # print(url2)#获取到带有版本号的ip地址 # response = {'status': 100, 'msg': '查询成功'} # book_list = models.Book.objects.all() # # 实例化产生一个分页对象 # # 不继承来修改对象的值 # page=PageNumberPagination() # # 每页显示多少条 # page_size = 3 # # 查询的key,问号后面的key # page_query_param = 'aa' # # 指定当前页显示多少条 # page_size_query_param='size' # # 每页最多显示多少条 # max_page_size=4 # # 第一个参数:要分页的数据,第二个参数request对象,第三个参数,当前视图对象 # page_list = page.paginate_queryset(book_list, request, self) # # 再序列化的时候,用分页之后的数据 # ser = mySer.BookSerializer(instance=page_list, many=True) # # response['data'] = ser.data # # return Response(response) # # 会带着链接,和总共的条数(不建议用) # return page.get_paginated_response(ser.data) # # return Response(ser.data) 路由---------------------------------------------------------------------------------------------------- #版本控制路由 # url(r'^(?P<version>[v1|v2|v3]+)/books/$', views.Book.as_view({'get': 'get_all'}), name='ttt'), 在setting中--------------------------------------------------------------------------------------------- REST_FRAMEWORK = { # 'DEFAULT_VERSIONING_CLASS':'rest_framework.versioning.URLPathVersioning',#版本控制全局使用 # 'VERSION_PARAM': 'version', # 'DEFAULT_VERSION': 'v1', # 'ALLOWED_VERSIONS': ['v1', 'v2'], }
网站名称:rest_framework分页,版本控制
分享链接:https://www.cdcxhl.com/article16/ipcpdg.html
成都网站建设公司_创新互联,为您提供全网营销推广、域名注册、微信小程序、自适应网站、网站策划、企业网站制作
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联