码迷,mamicode.com
首页 > 其他好文 > 详细

01,CBV与FBV

时间:2019-01-03 23:07:36      阅读:240      评论:0      收藏:0      [点我收藏+]

标签:file   源码分析   bsp   class类   而不是   imp   提高   12px   eve   

 

什么是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

标签:file   源码分析   bsp   class类   而不是   imp   提高   12px   eve   

原文地址:https://www.cnblogs.com/pontoon/p/10217401.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!