django 類視圖的使用方法詳解
前言
當(dāng)我們?cè)陂_發(fā)一個(gè)注冊(cè)模塊時(shí)。瀏覽器會(huì)通過get請(qǐng)求讓注冊(cè)表單彈出來,然后用戶輸完注冊(cè)信息后,通過post請(qǐng)求向服務(wù)端提交信息。這時(shí)候我們后端有兩個(gè)視圖函數(shù),一個(gè)處理get請(qǐng)求,一個(gè)處理post請(qǐng)求。兩個(gè)視圖函數(shù)都是不同的名字。
但是隨著開發(fā)的進(jìn)行。當(dāng)你想要找到注冊(cè)模塊的這兩個(gè)視圖,太麻煩了。如果這兩個(gè)視圖函數(shù)能放在一起,歸成一個(gè)類,作為注冊(cè)模塊的類。這樣日后的維護(hù)將會(huì)方便很多。這時(shí)候,django的類視圖就能實(shí)現(xiàn)這個(gè)功能了。
對(duì)比
在沒有類視圖前,視圖是這樣的:
def get_register_page(request):
return render(request,"注冊(cè)頁(yè)面.html")
def post_register_page(request):
# 處理請(qǐng)求,把信息寫進(jìn)數(shù)據(jù)庫(kù)
return HttpResponse("注冊(cè)成功")
有了django的類視圖,視圖是這樣的:
class register(View):
def get(self,request):
return render(request,"register.html")
def post(self,request):
title = request.POST.get("name")
content = request.POST.get("password")
return HttpResponse("注冊(cè)成功")
別漏了要在項(xiàng)目的urls設(shè)置:
url(r'^register$',views.register.as_view())
注意,as_view()是用來分發(fā)請(qǐng)求方法的??梢园淹粋€(gè)頁(yè)面的不同請(qǐng)求方法分發(fā)給不同的視圖來執(zhí)行。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python+Selenium+Webdriver實(shí)現(xiàn)自動(dòng)執(zhí)行微軟獎(jiǎng)勵(lì)積分腳本
這篇文章主要為大家詳細(xì)介紹了如何利用Python+Selenium+Webdriver實(shí)現(xiàn)自動(dòng)執(zhí)行微軟獎(jiǎng)勵(lì)積分腳本,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2023-02-02
Python實(shí)現(xiàn)的爬蟲刷回復(fù)功能示例
這篇文章主要介紹了Python實(shí)現(xiàn)的爬蟲刷回復(fù)功能,結(jié)合實(shí)例形式分析了Python2.7基于爬蟲實(shí)現(xiàn)的模擬登陸、刷帖、回復(fù)等功能相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-06-06
基于PyQt5實(shí)現(xiàn)圖轉(zhuǎn)文功能(示例代碼)
PyQt提供了一個(gè)設(shè)計(jì)良好的窗口控件集合,具有更方便的操作性。學(xué)過VB的同學(xué)會(huì)知道,相比與VB的使用,在界面設(shè)計(jì)上元素更豐富,這篇文章主要介紹了基于PyQt5完成的圖轉(zhuǎn)文功能,需要的朋友可以參考下2022-06-06
python實(shí)現(xiàn)商品進(jìn)銷存管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)商品進(jìn)銷存管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05
python快速建立超簡(jiǎn)單的web服務(wù)器的實(shí)現(xiàn)方法
某些條件測(cè)試,需要一個(gè)簡(jiǎn)單的web服務(wù)器測(cè)試一下,為此專門去配置個(gè)nginx 或者 apache服務(wù)器略顯麻煩,這里就為大家介紹一下使用python快速建立超簡(jiǎn)單的web服務(wù)器的方法,需要的朋友可以參考下2018-02-02
python網(wǎng)絡(luò)編程學(xué)習(xí)筆記(二):socket建立網(wǎng)絡(luò)客戶端
看了這一節(jié),突然之間對(duì)python網(wǎng)絡(luò)編程學(xué)習(xí)筆記(1)中的一些不理解的問題有了認(rèn)識(shí),至少明白了socket是怎么回事。這里關(guān)于socket的起源等問題就不做筆記記錄了,直接進(jìn)入主題2014-06-06
python數(shù)據(jù)分析之DateFrame數(shù)據(jù)排序和排名方式
這篇文章主要介紹了python數(shù)據(jù)分析之DateFrame數(shù)據(jù)排序和排名方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05

