django中的视图函数分为两类,CBV和FBV
FBV:
一条路由对应一个函数
CBV:
一条路由对应一个类,该类必须继承from django.views import View类
urlpatterns = [ re_path(r'^login.html$', views.Login.as_view()), ]
CBV的原理:
当请求发送过来时,先根据url找到Login的类,然后内部通过dispatch经过getattr进行反射,然后匹配相应的函数
---CBV如何让使用装饰器
方法一:通过method_decorator装饰器,作用整个类。
方法二:通过metthod_decorator装饰器作用在视图类的方法中,只对CBV中的一个类函数有效
标签:函数,views,视图,django,CBV,decorator From: https://www.cnblogs.com/powfu/p/16908800.html