博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
分页器 版本控制
阅读量:4309 次
发布时间:2019-06-06

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

分页器

三种分页:

 

第一种:

类似于原来django中的分页-page_size = api_settings.PAGE_SIZE-page_query_param = 'page'-page_size_query_param-max_page_size

 

第二种:偏移分页

 

#每页显示的条数default_limit = api_settings.PAGE_SIZE#标杆值offset_query_param = 'offset'#往后偏移多少limit_query_param = 'limit'#每页显示最大的条数    max_limit = None

 

****要取的条数,如果超过了,还剩多少,就显示多少
第三种:加密分页(查询速度快)

#按nid排序page.ordering = 'nid'#查询的key值cursor_query_param = 'cursor' #每页显示多少条page_size = api_settings.PAGE_SIZE

 

使用:

-生成一个对象(普通,偏移,加密)--***重点:可以修改对象的属性-ret=对象.paginate_queryset(book_list, request, self)-丢到序列化类中,完成序列化,-最后返回

 

版本控制

掌握的:URLPathVersioning

-在setting中配置:

'VERSION_PARAM':'version','DEFAULT_VERSION':'v1','ALLOWED_VERSIONS': ['v1', 'v2'],

 

-局部使用:

versioning_class = URLPathVersioning

 

-全局使用:

'DEFAULT_VERSIONING_CLASS':'rest_framework.versioning.URLPathVersioning',

 

-路由配置:

url(r'^(?P
[v1|v2|v3]+)/books/$', views.Book.as_view({
'get':'get_all'}),name='ttt'),

 

-在视图类中的request对象中,就可以取出版本号
-反向解析:

 

url2=request.versioning_scheme.reverse('ttt',request=request)

 

 

转载于:https://www.cnblogs.com/ouyang99-/p/10160383.html

你可能感兴趣的文章
Python 集合
查看>>
几本关于PHP安全的书
查看>>
学习记录--HooKSystemCall
查看>>
使用apache设置绑定多个域名或网站
查看>>
bzoj2194: 快速傅立叶之二
查看>>
2018-2019-2 20189206 《密码与安全新技术专题》 第四次作业
查看>>
CentOS7如何设置静态IP及开放DNS端口
查看>>
精密V / I 转换电路
查看>>
求组合数取模的几种方法
查看>>
个人所得税计算器
查看>>
vs2015 不能启动 iis express
查看>>
electron 写入注册表 实现开机自启动
查看>>
记一次Debug过程
查看>>
画圆算法
查看>>
记录一次redis故障
查看>>
最近公共祖先(lca) hdu 2586
查看>>
安卓开发笔记——关于AsyncTask的使用
查看>>
spout详解
查看>>
一个md5加密的工具类,用的虚拟机的包,不需要额外导包
查看>>
centos7在VMware下配置网络连接
查看>>