Django 之 CBV与FBV

FBV:基于函数来实现视图对请求的处理

CBV:基于类来实现视图对请求的处理

  • 提高了代码的复用性,可以使用面向对象的技术,比如Mixin(多继承)
  • 可以用不同的函数针对不同的HTTP方法处理,而不是通过很多if判断,提高代码可读性

实现一个处理GET方法的view,用FBV写的话是下面这样

from django.http import HttpResponse
def get_view(request):
    if request.method == 'GET':
       return HttpResponse('这是一个Get请求') 

实现一个处理GET方法的view,用CBV写的话是下面这样

from django.shortcuts import HttpResponse,render
from django.views import View
class LoginView(View):
    def get(self,request):
       return render(request,'index.html')

    def post(self,request):
        return HttpRespnse('这是一个POST请求')
 

put请求:更新时使用--更新全局
patch请求:更新时使用--更新局部
delete请求:删除时使用
head请求:
options请求:
trace请求:

posted @ 2018-10-22 19:17  哈哈毛毛怪  阅读(112)  评论(0编辑  收藏  举报