一个URL除了对应函数外,还能对应一个类
view.py;例如:
from django.views import View //继承它
class Login(View): def get(self,request): pass def post(self,request): pass
urlpatterns = [ #path('admin/', admin.site.urls), path('login/',views.Login.as_view()), ]
from表单提交只有两种方式:GET\POST
Ajax还有很多种,常见:
- get 查
- post 创建
- put 更新
- delete 删除
内部是通过反射“getattr”来做的,因为你要是都通过if else那得写多少啊!
在get post执行之前最开始是执行的dispatch方法:
def dispatch(self,request,*args,**kwargs):
print('before') obj = super(Login,self).dispatch(request,*args,,**kwargs)
print('before')
return obj
123