В чем разница между статическими файлами и медиафайлами в Django? - PullRequest
57 голосов
/ 16 февраля 2011

Я перехожу на Django 1.3 и нахожу это разделение медиа и статических файлов немного запутанным. Вот как выглядит 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_ROOT и STATIC_ROOT? Должны ли они быть отдельными каталогами? В чем разница?

Ответы [ 2 ]

53 голосов
/ 16 февраля 2011

Статические файлы предназначены для javascript / images и т. Д., Но медиа-файлы предназначены для загруженного пользователем контента.

29 голосов
/ 16 февраля 2011

Как сказал Уку Лоскит, статические файлы предназначены для таких вещей, как css-файлы ваших приложений, файлы javascript, изображения и т. Д. Медиа-файлы, как правило, загружаемые пользователем или администратором файлы.

Обычно вы хотите MEDIA_ROOTи STATIC_ROOT быть отдельными каталогами.Помните, что STATIC_ROOT - это место, где команда управления collectstatic поместит все найденные статические файлы.В производственной среде вы затем настраиваете свой веб-сервер так, чтобы он обслуживал файлы из STATIC_ROOT при получении запроса, начинающегося с STATIC_URL.Если вы используете Django devserver для разработки, он будет автоматически обслуживать статические файлы.

Приложение staticfiles, таким образом, распутывает загруженные пользователем носители с носителей приложения, тем самым облегчая развертывание, резервное копирование и контроль версий.До появления приложения staticfiles разработчики часто смешивали мультимедийные файлы со статическими ресурсами приложения.

Документы 1.3 для статических файлов постоянно улучшаются;для получения более подробной информации, смотрите инструкции .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...