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...