1. 程式人生 > >005:Django Form請求

005:Django Form請求

本章知識點

  1. Django 請求
  2. Django Form表單
  3. 請求與相應
    知識點講解
    在這裡插入圖片描述
    1. Django 請求
    傳遞資料的方式
    Form表單
    Ajax
    Url get請求
    我們研究request引數
    在檢視當中,大部分函式有request引數,request這個引數是當URL呼叫檢視函式的時候接收 傳遞的請求。
    Request接收的就是一個請求
    Request.META 請求當中攜帶的引數
    HTTP_USER_AGENT:Mozilla/5.0 (Windows NT 6.1; WOW64; rv:64.0) Gecko/20100101 Firefox/64.0 瀏覽器版本
    Form表單

    Action 請求的地址
    地址為空,請求自己的地址
    Method 請求的方式
    Post 傳送,密文的
    Get 獲取,明文
    在URL之後以?開始,以鍵=值的形式以&分割
    Input name是傳遞引數時候的鍵
    Submit

用指定方法向指定的地址傳遞指定的引數
1、調整了form表單的action和method引數
在這裡插入圖片描述
2、調整提交按鈕在這裡插入圖片描述
我們發起post請求出錯了
Csrf錯誤
在這裡插入圖片描述
不要著急
Csrf 跨域請求攻擊在這裡插入圖片描述
Django為了防止csrf攻擊,定義csrf中介軟體
在這裡插入圖片描述
所以,所有的post請求多應該在form表單下的第一行新增csrftoken標籤在這裡插入圖片描述
假如我們的檢視函式需要接收post請求,那麼,我們的載入模組必須是render
Render 和其他方法唯一的不同就是第一個引數需要是request
在這裡插入圖片描述


Hidden 是input隱藏域

檢視接收資料
request.method #返回請求的方式
#返回值:POST GET
request.POST #接收所有POST過來的資料
request.GET # 接收所有GET過來的資料
在這裡插入圖片描述
建模在這裡插入圖片描述
同步資料庫在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
提交到HTML關注的問題
在這裡插入圖片描述
HTML提交到views關注在這裡插入圖片描述
在這裡插入圖片描述
\STDB\Student\views.py
#匯入資料庫
from django.shortcuts import render
from Student.models import UserInfo
def register(request):
“”"
request.method #返回請求的方式
#返回值:POST GET
request.POST #接收所有POST過來的資料
request.GET # 接收所有GET過來的資料
“”"
if request.method == “POST” and request.POST: #如果請求方式為post並且port有值
firstName = request.POST.get(“firstName”) #這裡捕獲的是前端的name
lastName = request.POST.get(“lastName”) # 這裡捕獲的是前端的name
inputEmail = request.POST.get(“inputEmail”) # 這裡捕獲的是前端的name
inputPassword = request.POST.get(“inputPassword”) # 這裡捕獲的是前端的name
confirmPassword = request.POST.get(“confirmPassword”) # 這裡捕獲的是前端的name

    #開啟資料庫進行儲存
    user = UserInfo() #例項化模型
    user.firstname = firstName
    user.lastname = lastName
    user.email = inputEmail
    user.password = inputPassword
    user.save() #儲存
return render(request,"register.html",locals())

本章總結
Django 請求
Django Form表單
請求與相應