1. 程式人生 > 其它 >django上傳資料夾_Django配置使用者上傳資料夾和暴露後端資料夾資源

django上傳資料夾_Django配置使用者上傳資料夾和暴露後端資料夾資源

網站所用的靜態檔案我們都預設存放到static資料夾下,而使用者上傳的檔案也是靜態資源,我們需要找一個公共的地方專門儲存使用者上傳的靜態檔案。

針對使用者上傳的不同檔案,儲存到指定的資料夾下。

media配置專門用來指定使用者上傳的靜態檔案存放路徑

1、配置檔案中書寫以下程式碼

# settings.py

MEDIA_ROOT = os.path.join(BASE_DIR, 'media') # 使用者上傳的檔案就會儲存到該資料夾下

# media是資料夾的名字,可以自定義,一般使用media作為名字

當用戶上傳檔案,會自動建立media目錄,並且你模型表中指定的上傳路徑,會自動在media目錄下建立相應的上傳目錄。

例如models類中,avatar欄位:

avatar = models.FileField(upload_to='avatar', default='avatar/default.png')

該模型表中指定上傳至avatar目錄,因此會在media目錄下再建立一個avatar目錄,用於存放使用者的頭像

2、還需要將後端資料夾資源暴露給使用者,這樣使用者才能訪問到。


先去urls.py中匯入模組:

from django.views.static import serve

from bbs import settings

在urls.py中多寫一條url,固定的寫法:

url(r'^media/(?P<path>.*)', serve, {'document_root': settings.MEDIA_ROOT}),