摘要: 自动生成4个url路由:from rest_framework import routersrouter = routers.DefaultRouter()router.register(r'wrx',PagesView)urlpatterns = [ re_path(r'^(?P<version> 阅读全文
posted @ 2019-02-19 17:42 子谦0618 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 渲染器:作用于页面,JSONRenderer只是JSON格式,BrowsableAPIRenderer有页面,.AdminRenderer页面以admin形式呈现(需要在请求地址后缀添加?fromat=admin)渲染器全局与局部配置方法全局配置: REST_FRAMEWORK = { #渲染器配置 阅读全文
posted @ 2019-02-19 17:42 子谦0618 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 分页a.分页,看第N页,每页显示N条数据方式一:使用PageNumberPagination创建分页对象,配合settings全局配置 views设置 settings设置 返回结果 方式二:不使用全局配置,继承PageNumberPagination做自定制类,其余同上 自定制类: from re 阅读全文
posted @ 2019-02-19 17:41 子谦0618 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 方式一 1.settings设置 INSTALLED_APPS = [ ... 'rest_framework', ] 2.views设置 from rest_framework.response import Response class PagesView(APIView): def get(s 阅读全文
posted @ 2019-02-19 17:41 子谦0618 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 满足两个要求,request.Post中才有值 1.请求头要求:请求头中的Content-Type为application/x-www-form-urlencoded 2.数据格式要求 name=x&age=xx&gender=x 如: a.form表单提交 <form methed..> inpu 阅读全文
posted @ 2019-02-19 17:40 子谦0618 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 序列化方式一 :在业务类里序列化数据库数据 class RolesView(APIView): def get(self,request,*args,**kwargs): roles = models.Role.objects.all().values('id','title')[1:3] ret 阅读全文
posted @ 2019-02-19 17:40 子谦0618 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 1.自己写: class UserView(APIView): versioning_class = ParamVersion def get(self,request,*args,**kwargs): v1 = request._request.GET.get('version') v2 = re 阅读全文
posted @ 2019-02-19 17:39 子谦0618 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 权限认证:1.项目下utils文件写permissions.py文件 from rest_framework.permissions import BasePermission class SVIPPermission(BasePermission): #用户权限类 message = 'SVIP才 阅读全文
posted @ 2019-02-19 17:38 子谦0618 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 1、节流自定义类: import time from api import models VISIT_RECORD = {} class VisitThrottle(BaseThrottle): #设置访问频率为60秒3次 def allow_request(self, request, view) 阅读全文
posted @ 2019-02-19 17:38 子谦0618 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 用户认证:1.项目下utils文件写auth.py文件 2、settings配置用户全局认证如下: 3.views业务类可以在全局认证外设置单独认证规则 4.源码认证流程图 5.匿名用户全局配置: 阅读全文
posted @ 2019-02-19 11:47 子谦0618 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 用户POST登录-->后台验证用户名密码-->验证正确返回TOKEN-->验证错误返回错误信息 class UserAPI(APIView): #用户登录类 def post(self,request,*args,**kwargs): ret = {'code': 200, 'msg': None} 阅读全文
posted @ 2019-02-19 11:46 子谦0618 阅读(649) 评论(0) 推荐(0) 编辑