欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Form表單及django的form表單的補充

 更新時間:2019年07月25日 09:09:48   作者:谷子的  
這篇文章主要介紹了Form表單及django的form表單的補充,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

form 表單中的button按鈕

<button>提交</button> :放在form表單中,會有一個提交事件,會提交form數(shù)據(jù),

<input type="button" value="提交“> :是一個單純的按鈕,沒有任何默認事件,

先匹配url和視圖函數(shù)

from django.conf.urls import url
from django.contrib import admin

from app01 import views

urlpatterns = [
  url(r'^admin/', admin.site.urls),
  url(r'^login/', views.login),
]

視圖函數(shù)

def login(request):

  if request.method == "POST":
    return HttpResponse("OK!")



  return render(request,"login.html")

在前端頁面的顯示

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>

<form action="/login/" method="post">
{# csrf_token 在前端會渲染出一個input標簽,是一組鍵值對,鍵是csrfmiddlewaretoken,值是隨機字符串,會隨著下面的input標簽一起提交,只有這種形式發(fā)送post的請求才能被接收,#}

  {% csrf_token %}
  <p>用戶名:<input type="text" name="user"></p>
  <p>密碼:<input type="password" name="pwd"></p>
  <input type="submit">

</form>
</body>
</html>

----上面是正常的使用HTML的原生form表單,

現(xiàn)在使用django提供的form表單,在views里要創(chuàng)建一個類,繼承django的forms類,

然后在視圖函數(shù)中實例化出一個form對象,利用類的字段在前端頁面進行顯示,

as_p 是把后端所有的字段都顯示,定制性不好,可以自定義,利用對象,跟上字段

在views 創(chuàng)鍵類,

from django.shortcuts import render,HttpResponse

# Create your views here.

#使用django的form類
from django import forms

class LoginForm(forms.Form):
  user = forms.CharField()
  pwd = forms.CharField()


def login(request):

  if request.method == "POST":
    return HttpResponse("OK!")

  form_obj = LoginForm() -------------------實例化對象,
  return render(request,"login.html",{"form_obj":form_obj}) ---傳到前端顯示

在前端接收,渲染

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>

</head>
<body>

<form action="/login/" method="post">
{# csrf_token 在前端會渲染出一個input標簽,是一組鍵值對,鍵是csrfmiddlewaretoken,值是隨機字符串,會隨著下面的input標簽一起提交,只有這種形式發(fā)送post的請求才能被接收,#}

  {% csrf_token %}
  <p>用戶名:{{ form_obj.user }}</p> ------------
  <p>密 碼:{{ form_obj.pwd }}</p> -------------------
  <input type="submit">

</form>

</body>

</html>

查看前端的元素,

---前端現(xiàn)在可以輸入數(shù)據(jù),但后端要對提交的數(shù)據(jù)要驗證,

用到is_valid()的方法,取到提交的所有數(shù)據(jù),cleaned_data , 如果有錯誤信息 用errors,

#使用django的form類
from django import forms

class LoginForm(forms.Form):
  user = forms.CharField(max_length=9,min_length=5,error_messages={"required":"必填"})
  pwd = forms.CharField()


def login(request):

  if request.method == "POST":
    #post的請求驗證
    formobj = LoginForm(request.POST)#拿到所有的提交數(shù)據(jù)
    if formobj.is_valid():#都符合字段要求,

      #取出所有符合字段要求的數(shù)據(jù),用cleaned_data
      print(formobj.cleaned_data)#拿到字典格式的數(shù)據(jù)

    else:
      print(formobj.errors)#如果是提交錯誤的數(shù)據(jù),用errors



    return HttpResponse("OK!")

  form_obj = LoginForm()



  return render(request,"login.html",{"form_obj":form_obj})

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 淺談一下python線程池簡單應用

    淺談一下python線程池簡單應用

    這篇文章主要介紹了淺談一下python線程池簡單應用,線程池在系統(tǒng)啟動時即創(chuàng)建大量空閑的線程,程序只要將一個函數(shù)提交給線程池,線程池就會啟動一個空閑的線程來執(zhí)行它,需要的朋友可以參考下
    2023-04-04
  • YOLOv5車牌識別實戰(zhàn)教程(六)性能優(yōu)化與部署

    YOLOv5車牌識別實戰(zhàn)教程(六)性能優(yōu)化與部署

    這篇文章主要介紹了YOLOv5車牌識別實戰(zhàn)教程(六)性能優(yōu)化與部署,在這個教程中,我們將一步步教你如何使用YOLOv5進行車牌識別,幫助你快速掌握YOLOv5車牌識別技能,需要的朋友可以參考下
    2023-04-04
  • python利用插值法對折線進行平滑曲線處理

    python利用插值法對折線進行平滑曲線處理

    這篇文章主要為大家詳細介紹了python利用插值法對折線進行平滑曲線處理,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • Python實現(xiàn)批量繪制遙感影像數(shù)據(jù)的直方圖

    Python實現(xiàn)批量繪制遙感影像數(shù)據(jù)的直方圖

    這篇文章主要為大家詳細介紹了如何基于Python中gdal模塊,實現(xiàn)對大量柵格圖像批量繪制直方圖,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2023-02-02
  • Python3中zip()函數(shù)知識點小結(jié)

    Python3中zip()函數(shù)知識點小結(jié)

    本文主要介紹了Python3中zip()函數(shù)知識點小結(jié),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • PIP安裝python包出現(xiàn)超時問題的解決

    PIP安裝python包出現(xiàn)超時問題的解決

    這篇文章主要介紹了PIP安裝python包出現(xiàn)超時問題的解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • Python數(shù)據(jù)分析?Numpy?的使用方法

    Python數(shù)據(jù)分析?Numpy?的使用方法

    這篇文章主要介紹了Python數(shù)據(jù)分析?Numpy?的使用方法,Numpy?是一個Python擴展庫,專門做科學計算,也是大部分Python科學計算庫的基礎,關于其的使用方法,需要的小伙伴可以參考下面文章內(nèi)容
    2022-05-05
  • 如何在C++中調(diào)用Python

    如何在C++中調(diào)用Python

    雖然現(xiàn)在Python編程語言十分的火爆,但是實際上非要用一門語言去完成所有的任務,并不是說不可以,而是不合適。在一些特定的、對于性能要求比較高的場景,還是需要用到傳統(tǒng)的C++來進行編程的。本文將用C++的代碼去調(diào)用Python函數(shù)中實現(xiàn)的一些功能
    2021-05-05
  • python?Helium自動化庫的功能特性探索

    python?Helium自動化庫的功能特性探索

    這篇文章主要為大家介紹了python?Helium自動化庫的功能特性探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-02-02
  • python中的round()函數(shù)用法詳解

    python中的round()函數(shù)用法詳解

    這篇文章主要給大家介紹了關于python中round()函數(shù)用法的相關資料,round()函數(shù)是Python內(nèi)置函數(shù)之一,用于對數(shù)字進行四舍五入操作,需要的朋友可以參考下
    2023-08-08

最新評論