01,CBV与FBV

Posted pontoon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了01,CBV与FBV相关的知识,希望对你有一定的参考价值。

 

什么是FBV、CBV?CBV怎么用?

什么是FBV?

FBV就是视图使用函数处理。不再赘述

什么是CBV?

同理CBV就是视图使用Class类来处理
Python是一个面向对象的编程语言,如果只用函数来开发,有很多面向对象的优点就错失了(继承、封装、多态)。所以Django在后来加入了Class-Based-View。可以让我们用类写View。这样做的优点主要下面两种:
  1. 提高了代码的复用性,可以使用面向对象的技术,比如Mixin(多继承)
  2. 可以用不同的函数针对不同的HTTP方法处理,而不是通过很多if判断,提高代码可读性

一次完整的CBV过程

from django.views import View (View源码分析

 
技术分享图片
    点击去看看.as_view()方法    
技术分享图片
技术分享图片
 
技术分享图片
 
        在到self.dispatch()        
技术分享图片
        一个反射        
技术分享图片
 
技术分享图片

OK 源码分析至此结束!

https://www.cnblogs.com/yuanchenqi/articles/8715364.html
 
 
 
 
 
 
 
 

以上是关于01,CBV与FBV的主要内容,如果未能解决你的问题,请参考以下文章

FBV与CBV 及CBV源码分析

Django——CBV与FBV

Django视图层--FBV与CBV

Django视图层--FBV与CBV

Django - CBV与FBV

FBV与CBV及上传文件示例