選單

Django中如何獲取POST提交的資料?

這篇文章來給大家分享一下,在Django中如何獲取POST提交的資料。

為了避免枯燥的傳遞知識,我們還是以一個實戰案例來進行演示。這個案例十分的簡單,就是編寫一個頁面,這個頁面中有form表單,表單中有使用者名稱和密碼的輸入框,需要不管使用者填了什麼,點選提交的時候,都在頁面中原封不動的展示出來。

示例截圖如下:

Django中如何獲取POST提交的資料?

感興趣的朋友可以先嚐試這自己寫一下,如果寫不出來,再接著往下看,我會在本篇文章的後面附上完整的程式碼。

在上程式碼之前,先普及兩個小知識。第一,Django中的post傳參,提供了防止CSRF攻擊的校驗,所以,每個表單的第一行,都需要寫上{% csrf_token %},否則會報錯。第二,Django中透過request。POST來獲取post提交的引數,可以將該物件當成一個字典來用,使用request。POST。get(key)來獲取相應的引數。

瞭解了這兩個前置知識以後,我們就可以上程式碼了。

第一步:新增路由。修改app1/urls。py

雖然這裡的路由很多,但是關鍵的只有一個。

path(‘test_post/’, test_post,name=‘test_post’),  # 測試獲取POST提交的資料

第二步:新增檢視函式。修改app1/views。py

隨著案例的越來越多,咱們的程式碼也越來越多了,這裡關鍵的程式碼只有一段。

第三步:新增模板。新增templates/app1/test_post。html

一切準備就緒,這個時候你只要將程式啟動起來,使用瀏覽器訪問http://127。0。0。1:8000/test_post/就可以檢視效果了。你可以輸入不同的使用者名稱和密碼進行嘗試,檢視頁面的輸出結果。

為了方便大家練習,這裡留一個練習題給大家:在頁面中存在一個學生成績的錄入表單,包含學生名字,班級,分數。錄入3個以上的學生成績,在頁面中輸出所有學生的平均分,最高分,最低分。

今天的分享就到這裡了。

謝謝大家!