08 2018 档案
摘要:为什么要序列化 django 查询数据库返回的类型是 queryset 类型 而我们和前端通信使用的大多数是json类型,这个时候我们需要把 queryset的数据类型转换成python的数据类型然后在转换成json 的格式返回 在我们没使用 restframework 中的 序列化之前我们是这样做
阅读全文
摘要:解析器的主要作用:对用户请求体中的数据进行解析 解析器前戏 有时候我们在接受前端传送的值的时候,会存在这样一个奇怪的现象使用request.body可以取到值,而使用request.POST的时候去不到值,基于这样的情况,究竟是如何造成的呢? 追了以下源码发现 把request.body 中的值转换
阅读全文
摘要:版本 新建一个工程Myproject和一个app名为api api/models.py 数据结构如下: Myproject/urls.py api/urls.py views.py settings.py 1.url中通过GET传参 访问 后台可以看到当前的版本 如果url中没有传版本参数,则显示默
阅读全文
摘要:自定义节流 有些时候为了对用户的访问频率进行限制和防止爬虫,需要在规定的时间中对用户访问的次数进行限制 下面自定义一个用户每分钟只能访问3次,代码如下: 上面的大码就是当用户第一次访问的时候把它的IP地址和当前访问的时间添加到字典 VISIT_RECORD 中, 循环取出最先添加的时间判断其时间有没
阅读全文
摘要:权限的使用场景 有时候我们的用户分为普通用户,VIP用户和超级VIP用户,有些接口我们需要针对不同的用户设定不同的权限 常用的做法如下: 简单的表结构设计如下: 写一个接口只允许登陆后的 SVIP用户 才能访问,代码如下 为其添加 url 添加一个用户登陆的接口,视图函数代码如下: 为其添加 url
阅读全文
摘要:一、基础 django 2.0官方文档 安装 假如我们想实现用户必须是登陆后才能访问的需求,利用restframework该如何的去实现,具体的源码流程又是怎么样的呢 为了有一个清晰的认识,先直接上代码,有一个清晰的认识,在剖析源码流程 首先先创建一个应用 在应用 app01.views.py 下
阅读全文