CBV:class base view
![](https://img.haomeiwen.com/i6878902/85f585c4f3b5fca4.png)
CBV
![](https://img.haomeiwen.com/i6878902/06061e0a7ad2e15c.png)
image.png
![](https://img.haomeiwen.com/i6878902/6fd291fff2a99517.png)
CBV流程
![](https://img.haomeiwen.com/i6878902/a168325aa611fc37.png)
get post put delete请求的寻找方式,先去dispatch方法
csrf_exempt注解用在方法和类上不同。在类中的dispatch()方法上使用,要用method_decorator(),单独方法无效
![](https://img.haomeiwen.com/i6878902/897dba22daf2b98b.png)
image.png
![](https://img.haomeiwen.com/i6878902/c9f87868212e2b79.png)
image.png
![](https://img.haomeiwen.com/i6878902/dcd757d08cd1c820.png)
或者这样写
![](https://img.haomeiwen.com/i6878902/118b81a7dc4bc063.png)
put是全部更新,patch是部分更新
![](https://img.haomeiwen.com/i6878902/dcd588fbe717514c.png)
用户认证
用户认证
![](https://img.haomeiwen.com/i6878902/df6ffe3ee273bfb4.png)
image.png
![](https://img.haomeiwen.com/i6878902/bc92c8965b196524.png)
还要加一个函数
![](https://img.haomeiwen.com/i6878902/7c040c6791b7df66.png)
源码流程
![](https://img.haomeiwen.com/i6878902/3af12a592b42e1d0.png)
全局配置 认证类
![](https://img.haomeiwen.com/i6878902/e2dd98a4adf73b78.png)
image.png
![](https://img.haomeiwen.com/i6878902/3cbb9c265bf37342.png)
image.png
![](https://img.haomeiwen.com/i6878902/e9e1b73b4b13ca9a.png)
image.png
权限
![](https://img.haomeiwen.com/i6878902/e6c6b65b5f030f40.png)
image.png
![](https://img.haomeiwen.com/i6878902/1016d30c0aa0a4bb.png)
权限类
![](https://img.haomeiwen.com/i6878902/a5001b4ab5a75de2.png)
image.png
![](https://img.haomeiwen.com/i6878902/d10e16dff533cacd.png)
权限总结
版本 推荐方式
![](https://img.haomeiwen.com/i6878902/b829f15d661eb62e.png)
image.png
![](https://img.haomeiwen.com/i6878902/4cb993cb2b4f975b.png)
版本控制
django的解析器:request.post
![](https://img.haomeiwen.com/i6878902/62206bec3e344bfc.png)
request.post有无值,看header和data的格式如果把data jsonstringfy,就不行了
![](https://img.haomeiwen.com/i6878902/42cf5babcc383f4b.png)
image.png
rest-framework解析器
![](https://img.haomeiwen.com/i6878902/8e7b5e7529d259ed.png)
只能解析json数据
![](https://img.haomeiwen.com/i6878902/8ed25f52b14edeb6.png)
可以有好几个解析器
![](https://img.haomeiwen.com/i6878902/9bf353779723f219.png)
调用
![](https://img.haomeiwen.com/i6878902/e3e5da9cb24b8cae.png)
解析器全局配置
序列化
![](https://img.haomeiwen.com/i6878902/dc26ab2a65dd294e.png)
many=true是多个对象,如果是只有一个对象,用=false
![](https://img.haomeiwen.com/i6878902/3afe149a6f8fbb43.png)
image.png
![](https://img.haomeiwen.com/i6878902/c6b090f89ed4a5fe.png)
image.png
![](https://img.haomeiwen.com/i6878902/5adefafc5fbbf728.png)
image.png
![](https://img.haomeiwen.com/i6878902/38cc9e108ce64583.png)
image.png
生成链接url
![](https://img.haomeiwen.com/i6878902/ba15379186a17bc0.png)
group可以生成url
![](https://img.haomeiwen.com/i6878902/b91099b206180091.png)
image.png
分页有三种
![](https://img.haomeiwen.com/i6878902/bcd6ee967fc1dbe2.png)
用默认的
不用再settings里设置全局page_size了
![](https://img.haomeiwen.com/i6878902/96fefe7321fadd59.png)
自定义的pagination
![](https://img.haomeiwen.com/i6878902/d820cc381dd521cf.png)
image.png
第二种,从第几个开始,取几条
![](https://img.haomeiwen.com/i6878902/eb9857a53fa7c6a2.png)
image.png
![](https://img.haomeiwen.com/i6878902/2b76b51b3f2a0e71.png)
换一个类继承
第三种,加密分页,cursor游标
![](https://img.haomeiwen.com/i6878902/271a5ad3528020d2.png)
image.png
![](https://img.haomeiwen.com/i6878902/02a99a9da1a171c1.png)
image.png
![](https://img.haomeiwen.com/i6878902/221ea46a44660c00.png)
image.png
视图
![](https://img.haomeiwen.com/i6878902/bf21cbcbad0446ab.png)
image.png
![](https://img.haomeiwen.com/i6878902/0025ebb3fd378538.png)
image.png
![](https://img.haomeiwen.com/i6878902/b6396cd442028566.png)
image.png
![](https://img.haomeiwen.com/i6878902/142e27c38f9076c5.png)
image.png
![](https://img.haomeiwen.com/i6878902/efecb1224141e8d0.png)
genericviewset类
![](https://img.haomeiwen.com/i6878902/ae4839a0d8ee41a5.png)
modelviewset类
![](https://img.haomeiwen.com/i6878902/dd50eaafbd7f4c0f.png)
视图总结
路由
![](https://img.haomeiwen.com/i6878902/156e9dfbf00214ea.png)
image.png
![](https://img.haomeiwen.com/i6878902/4b154fb86110d1c4.png)
自动生成路由
渲染
![](https://img.haomeiwen.com/i6878902/06c242dd69609a88.png)
视图里,这俩就可,页面会好看
![](https://img.haomeiwen.com/i6878902/80c0ca5f0ec5528d.png)
放全局