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请求: