Django views.py中的 FBV(函数) CBV(类)

# views.py
#
CBV from django.views import View  # 要导入此模块 class CBV(View):  # 要继承View类
  
  ‘’‘
  def dispatch(self,request,*agrs,**kwargs):  # dispatch作用,获取用户是以get还是post请求,并对应到相应的get或post函数
    print('记录日志')  # 我们自己写一些方法,自定制功能。不论用户用get或post请求,都会执行这里的语句
    result = super(CBV,self).dispatch(request,*agrs,**kwargs)  # 让dispatch执行父类的dispatch方法 return result                            # 返回父类的dispatch方法 # 我们可以重写dispatch方法来扩展CBV
’‘’

def get(self,request):  # 当以get方式请求时执行此方法 return HttpResponse('CBV.GET') def post(self,request):  # 当以post方式请求时执行此方法 return HttpResponse('CBV.POST')


# urls.py

urlpatterns = [
  url(r'^cbv$',view.CBV.as_view()),  # 需要加.as_view()
]

猜你喜欢

转载自www.cnblogs.com/dangrui0725/p/9624310.html