簡體   English   中英

Django中的靜態文件和媒體文件有什么區別?

[英]What is the difference between static files and media files in Django?

我正在轉向Django 1.3,發現媒體和靜態文件的這種分離有點令人困惑。 以下是default settings.py外觀:

# Absolute filesystem path to the directory that will hold user-uploaded files.
# Example: "/home/media/media.lawrence.com/media/"
MEDIA_ROOT = ''

# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash if there is a path component (optional in other cases).
# Examples: "http://media.lawrence.com/media/", "http://example.com/media/"
MEDIA_URL = ''

# Absolute path to the directory that holds static files.
# Example: "/home/media/media.lawrence.com/static/"
STATIC_ROOT = ''

# URL that handles the static files served from STATIC_ROOT.
# Example: "http://media.lawrence.com/static/"
STATIC_URL = '/static/'

我應該把什么放入MEDIA_ROOTSTATIC_ROOT 那些應該是單獨的目錄嗎? 有什么不同?

靜態文件適用於javascript /圖像等,但媒體文件適用於用戶上傳的內容。

正如Uku Loskit所說,靜態文件適用於應用程序的css文件,javascript文件,圖像等。媒體文件通常是用戶或管理員可上載的文件。

通常,您希望MEDIA_ROOTSTATIC_ROOT是單獨的目錄。 請記住, STATIC_ROOT是管理命令collectstatic將放置它找到的所有靜態文件的位置。 在生產中,然后在給定以STATIC_URL開頭的請求時,將您的Web服務器配置為從STATIC_ROOT提供文件。 如果您使用Django devserver進行開發,它將自動提供靜態文件。

因此,靜態文件應用程序將用戶上載的媒體從應用程序媒體中解開,從而使部署,備份和版本控制更容易。 在staticfiles應用程序之前,開發人員通常將媒體文件與靜態應用程序資產混合在一起。

靜態文件的1.3文檔一直在穩步提高; 有關詳細信息,請查看操作方法

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM