博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
分页器,解析器,url控制器,响应器
阅读量:5249 次
发布时间:2019-06-14

本文共 2941 字,大约阅读时间需要 9 分钟。

分页器    1 简单分页(查看第n页,每页显示n条)       -使用方法          -1 导入PageNumberPagination类
from rest_framework.pagination import PageNumberPagination,LimitOffsetPagination,CursorPagination
-2 实例化产生一个对象             -page_pagination = PageNumberPagination()          -3 需要配置四个参数:page_size,page_query_param,page_size_query_param,max_page_size             -page_size必须指定:在setting中指定或者直接赋值          -4 调用下面的方法,返回ret数据             ret = page_pagination.paginate_queryset(book_list, request, self)          -5 再序列化,就是序列化返回的数据,也就是ret       -类中需要掌握的几个属性          -page_size:控制每页显示条数          -page_query_param:控制查询第几页的查询参数,             -比如page_query_param='xx'             -http://127.0.0.1:8000/books/?xx=2  表示查询第二页的数据          -page_size_query_param:控制每页最大显示的条数             -比如page_pagination.page_size_query_param='max'             -http://127.0.0.1:8000/books/?xx=2&max=6   表示查询第二页的数据,每页显示6条          -max_page_size:控制每页最大显示的条数             -比如:page_pagination.max_page_size=7             -http://127.0.0.1:8000/books/?max=1000    最多显示7条    2 偏移分页(在第n个位置,向后查看n条数据)       -使用方式:同简单分页       -重点的参数          -default_limit:默认每页显示的条数,默认偏移的数量             -比如:default_limit=5             -http://127.0.0.1:8000/books/    就会显示5条数据          -limit_query_param:往后偏移多少条             -就用默认值:limit          -offset_query_param:标杆值             -用默认值:offset             limit_query_param+offset_query_param联合起来用:                -访问:http://127.0.0.1:8000/books/?limit=1&offset=5  表示:以数据的第5条作为标杆,往后偏移1条          -max_limit:最大偏移的条数(最大取出的条数)    3 CursorPagination(加密分页,只能看上一页和下一页,速度快)       -重点参数:          -page_size:每页显示的条数          -cursor_query_param:不需要动          -ordering:按什么排序 -通过get_paginated_response返回结果中带上一页和下一页的链接地址    page_pagination.get_paginated_response(book_ser.data) 方法的用法 响应器(不需要改)    响应回去的页面,数据格式是不同的    -局部使用:       在视图类中配置:       renderer_classes = [JSONRenderer,BrowsableAPIRenderer]    -全局使用:       在setting中配置:          'DEFAULT_RENDERER_CLASSES': (             'rest_framework.renderers.JSONRenderer',             'rest_framework.renderers.BrowsableAPIRenderer',          ),    url控制器    -其他两种都讲过    -自动生成路由       -在url.py中       from rest_framework import routers       #生成一个router对象       router=routers.DefaultRouter()       # 两个参数,一个是匹配的路由,一个是视图中写的CBV的类       router.register('books',views.BooksView)         urlpatterns = [          url(r'',include(router.urls))       ] 解析器     -解析器做什么用的?       -能够解析前端传递的数据格式:urlencode,formdata,json格式    -默认情况下解析所有格式内置了三种解析器       from rest_framework.parsers import JSONParser       from rest_framework.parsers import FormParser       from rest_framework.parsers import MultiPartParser    -解析器的局部使用       再视图类中配置:          parser_classes=[JSONParser]    -全局使用:       在setting中:       'DEFAULT_PARSER_CLASSES': (          'rest_framework.parsers.JSONParser',          'rest_framework.parsers.FormParser',          'rest_framework.parsers.MultiPartParser'       )

转载于:https://www.cnblogs.com/wrqysrt/p/10663039.html

你可能感兴趣的文章
Java使用barcode4j生成条形码
查看>>
调结者(Dispatcher)之执行action
查看>>
Hello World!
查看>>
SQLite 入门教程(四)增删改查,有讲究
查看>>
centos7 配置ftp服务器
查看>>
【区间DP】释放囚犯
查看>>
C语言经典代码段
查看>>
HDU - 4352 XHXJ's LIS
查看>>
php2
查看>>
labview下载地址
查看>>
javascript总结37:DOM:innerText 和 innerHTML
查看>>
ps快捷键
查看>>
oracle10g环境搭建
查看>>
linux 安装及开发环境
查看>>
Java JDK 环境配置
查看>>
C# 占位符
查看>>
Eclipse 或者 Myeclipse 提示选择工作空间设置
查看>>
【Leafletjs】6.Control.Loading推展-在地图上边框添加加载动态条
查看>>
GDSOI2019划水记
查看>>
连接mysql && ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
查看>>