您好,登錄后才能下訂單哦!
# 導入View基類
from django.views.generic.base import View
# 導入模版渲染函數
from django.shortcuts import render
# 這個是用戶登錄的驗證類
class LoginView(View):
"""登錄驗證"""
# get方式獲login頁面
def get(self, request):
return render(request, 'login.html', {})
# 用戶提交表單,返回主頁
def post(self, request):
"""提交表單"""
return render(request, 'index.html', {})
urls中,導入LoginView,調用.as_view方法
url(r'^login/$', LoginView.as_view(), name='login')
當類視圖調用as_view方法時,會把請求時的request方法自動對應到相應的類方法上,比如request的get方法對應到類視圖的get方法。
as_view僅僅能自動對應get和post(具體的request方法在類屬性當中有個列表:http_method_names = ['get', 'post', 'put', 'patch', 'delete', 'head', 'options', 'trace'])等方法,如果我在類視圖定義了自己的方法,那as_view并不能把我自定義的方法對應起來。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。