django基礎 Form元件之上傳檔案file

2022-04-28 23:18:23 字數 3021 閱讀 5362

注意:form表單提交檔案要有乙個引數enctype="multipart/form-data"

1

deff1(request):

2if request.method == "

get":3

return render(request,'

f1.html')

45else:6

import os #

匯入os模組7#

request.get / post /files方式.get()取值 去檔案name=fafafa的值

8 file_obj=request.files.get("

fafafa

") #

拿到乙個檔案物件

9 f=open(os.path.join('

static

',file_obj.name),'

wb') #

將檔名加入到static目錄下

10for chunk in file_obj.chunks(): #

chunk塊 檔案的大小,迴圈file_obj檔案物件.chunks

11 f.write(chunk)#

寫到檔案裡面去

="提交"

>

1314

form

>

15body

>

16html

>

html

1

class

f2form(form):

2 user=fields.charfield()

3 fafafa=fields.filefield()45

6def

f2(request):

7if request.method == "

get"

:8 obj=f2form()

9return render(request,'

f2.html

',)10

else

:11 obj=f2form(data=request.post,files=request.files) #

以post的方式獲取到檔案的所有物件

12if obj.is_valid(): #

校驗拿取的檔案物件13#

print(obj.cleaned_data)

14print(obj.cleaned_data.get('

fafafa

').name) #

校驗成功 獲取上傳檔案物件的 fafafa 檔名

15print(obj.cleaned_data.get('

fafafa

').size) #

獲取檔案物件的fafafa size大小

16return render(request,'

f2.html

',) #

錯誤資訊的時候 就返回到前端頁面 繼續上傳  

views

1

doctype html

>

2<

html

lang

="en"

>

3<

head

>

4<

meta

charset

="utf-8"

>

5<

title

>title

title

>

6head

>

7<

body

>

8<

form

method

="post"

action

="/f2/"

enctype

="multipart/form-data"

>910

}11}12

<

input

type

="submit"

value

="提交"

>

13form

>

14body

>

15html

>

html

django之Form元件補充

自定義驗證規則 方法一 from django.forms import form from django.forms import widgets from django.forms import fields from django.core.validators import regexval...

django中使用Form元件

內容 1.form元件介紹 2.form元件常用字段 3.form元件校驗功能 4.form元件內建正則校驗 參考 1.form元件介紹 1 之前的web開發模式 以註冊為例 關於校驗 2 關於form元件 之前在html頁面中利用form表單向後端提交資料時,都會寫一些獲取使用者輸入的標籤並且用f...

Django的form元件 正則校驗

from django.core.validators import regexvalidator 匯入正則校驗器regexvalidator class userinfo forms.form username forms.charfield label 使用者名稱 min length 6,re...