django-视图函数

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中的一个类函数有效

 

posted @ 2022-11-20 16:27  powfu  阅读(36)  评论(0)    收藏  举报