首页 > 编程语言 >源码分析之ViewSetMixin类

源码分析之ViewSetMixin类

时间:2022-10-25 17:25:24浏览次数:38  
标签:分析 get ViewSetMixin handler list 源码 action method

在rest_framework中继承了ModelViewSet类的视图函数,其内部ModelViewSet类继承了一个ViewSetMixin类

ViewSetMixin类重新写了as_view()方法,使得我们可以更加方便快速的写出五个接口!!

image

ViewSetMixin类的位置:

from rest_framework.viewsets import ViewSetMixin

ViewSetMixin类中的as_view()方法分析

# 重写了as_view
# 核心代码(所以路由中只要配置了对应关系,比如{'get':'list'}),当get请求来,就会执行list方法
for method, action in actions.items():
    #method:get
    # action:list
    handler = getattr(self, action)
    #执行完上一句,handler就变成了list的内存地址
    setattr(self, method, handler)
    #执行完上一句  对象.get=list
    #for循环执行完毕 对象.get:对着list   对象.post:对着create

标签:分析,get,ViewSetMixin,handler,list,源码,action,method
From: https://www.cnblogs.com/suncolor/p/16825526.html

相关文章

  • 模糊测试工具AFL源码浅析
    前言AFL是一款著名的模糊测试的工具,最近在阅读AFL源码,记录一下,方便以后查阅。环境项目:AFL编译项目:将编译的优化选项关闭,即改写成-O0afl-gcc.c使用gdb加载afl-......
  • Python|爬取每日疫情数据并使用matplotlib绘制图像进行分析
    网页分析数据源腾讯疫情实时追踪打开网址,F12进入开发者工具(刷新一下页面),如下,所有数据都可以通过接口获取:国内数据接口:https://api.inews.qq.com/newsqa/v1/query/inn......
  • 45.限流Throttling及源码解析
    什么是限流?限流类似于权限机制,它也决定是否接受当前请求,用于控制客户端在某段时间内允许向API发出请求的次数,也就是频率假设有客户端(比如爬虫程序)短时间发起大量请......
  • 安全扫描程序:静态分析工具
      静态代码分析是对源代码或生成的二进制文件中执行的检查,以检测可能危及应用程序的错误和漏洞,它们不执行应用程序。GeneXus客户端添加了安全扫描程序,旨在提高使用Gen......
  • 爱上源码,重学Spring AOP深入
    AOP(AspectOrientProgramming):直译过来就是面向切面编程。AOP是一种编程思想用途:Transactions(事务调用方法前开启事务,调用方法后提交关闭事务)、日志、性能(监控方法......
  • 直播带货源码,如何用Android Studio实现登录跳转
    直播带货源码,如何用AndroidStudio实现登录跳转一、基本要求实现一个简单的用户登录界面,功能如下: 1、默认不存储用户信息,默认隐藏密码。 2、能通过勾选框记住密码......
  • 索引优化分析
    一、性能下降SQL慢、执行时间长、等待时间长查询语句写得烂索引失效关联查询太多join设计缺陷或不得已的需求)服务器调优及各个参数设置(缓冲、线程数......
  • HTML综合案例分析和实现
    HTML标签-综合案例-分析案例:旅游网站首页1.确定使用table来完成布局2.如果某一行只有一个单元格,则使用<tr><td></td></tr> 3.如果某一行有多个单元格,则使用<tr>......
  • 【Python数据分析】数据的维度、Numpy
    数据的维度一维数据一维数据由对等关系的有序或无序数据构成,采用线性方式组织列表和数组二维数据是由多个一维数据组成,是一维数据的组合形式多维数据由一维或二维数......
  • 驱动开发:内核无痕隐藏自身分析
    在笔者前面有一篇文章《驱动开发:断链隐藏驱动程序自身》通过摘除驱动的链表实现了断链隐藏自身的目的,但此方法恢复时会触发PG会蓝屏,偶然间在网上找到了一个作者介绍的一种方......