Django學習筆記之檔案上傳

2021-08-23 14:41:41 字數 1231 閱讀 2417

django在處理檔案上傳的時候,檔案資料被儲存在了request.files。files中的每個鍵為中的name

設定檔案的儲存路徑:

1.在專案根目錄下static中建立media資料夾

2.上傳後,會被儲存到「/static/media/檔案」

3.開啟settings.py檔案,增加media_root

static_url = '/static/'

staticfiles_dirs = [

os.path.join(base_dir,'static')

]# 檔案上傳路徑

media_root = os.path.join(base_dir,'static/media')

模板檔案:

files只有在請求的方法為post 且提交的帶有enctype=」multipart/form-data」 的情況下才會包含資料。否則,files 將為乙個空的類似於字典的物件

檢視函式:

# views.py

import os

from django_框架.settings import media_root

defupload_test

(request):

if request.method == 'get':

return render(request,'douban/file_upload.html')

elif request.method == 'post':

# 通過request.file獲取到檔案

f1 = request.files['file']

print(f1.name) # 獲取到檔案的名字

f1_name = os.path.join(media_root,f1.name)

print(f1_name) # 檔案的完整路徑

with open(f1_name,'wb') as ff:

for c in f1.chunks():

ff.write(c)

return httpresponse('上傳檔案成功')

else:

return httpresponse('上傳檔案 error')

Django筆記 檔案上傳

django中上傳的檔案,除了使用普通的方式接收外,還可以通過orm模型來自動接收。下面是一種較為通用的檔案提交方式,這種方式需要注意,form標籤的enctype屬性值必須為multipart form data,用於檔案提交的input標籤的type屬性值也必須是file,當然,請求method...

Django基礎之檔案上傳

在python中進行操作,需要安裝包pil pip install pillow在static目錄下新建一目錄,uploads,然後在settings.py配置檔案中新增配置項 media url media media root os.path.join base dir,static uploa...

django 檔案上傳

檔案上傳 當django處理上傳乙個檔案的時候,檔案資料被放在request.files中。這個文件解釋檔案怎麼樣被儲存在磁碟上或者記憶體中,怎樣定製預設的行為。基本檔案上傳 考慮乙個包含filefield的簡單的表單 from django import forms class uploadfil...