Django-28 文件上傳 上傳規範-前端[HTML] 上傳規範-後端[Django]

上傳規範-前端[HTML]

文件上傳必須爲POST提交方式
表單<form>中文件上傳時必須帶有enctype='multipart/form-data'時纔會包含文件內容數據。
表單中用<input type='file' name='xxx'>標籤上傳文件

上傳規範-後端[Django]

視圖函數中,用request.FILES取文件框的內容
file = request.FILES['xxx']
說明:
1,FILES的key對應頁面中file框的name值
2,file綁定文件流對象
3,file.name文件名
4,file.file文件的字節流數據

配置文件的訪問路徑和存儲路徑
在setting.py中設置MEDIA相關配置;Django把用戶上傳的文件,統稱爲media資源
Django把用戶上傳的文件,統稱爲media資源

#file : settings.py
MEDIA_URL = '/media'
MEDIA_ROOT = 'os.path.join(BASE_DIR,'media')'

MEDIA_URL和MEDIA_ROOT需要手動綁定
步驟:主路由中添加路由

from django.conf import settings
from django.conf.urls.static import static
urlpatterns += static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)

說明:等價於做了MEDIA_URL開頭的路由,Django接到該特徵請求後去MEDIA_ROOT路徑查找資源

文件寫入方案1:傳統的open方法

文件寫入方案2:藉助ORM

字段:FileFile(upload='子目錄名')


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章