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