Ответ 1
Статические файлы предназначены для javascript/изображений и т.д., но медиафайлы предназначены для загруженного пользователем контента.
Я перехожу к 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
? Должны ли они быть отдельными каталогами? В чем разница?
Статические файлы предназначены для javascript/изображений и т.д., но медиафайлы предназначены для загруженного пользователем контента.
Как сказал Уку Лоскит, статические файлы для таких вещей, как файлы css ваших приложений, файлы javascript, изображения и т.д. Медиа файлы обычно являются загружаемыми пользователем или административными файлами.
Обычно вы хотите, чтобы MEDIA_ROOT
и STATIC_ROOT
были отдельными каталогами. Имейте в виду, что STATIC_ROOT
- это то, где команда управления collectstatic
помещает все статические файлы, которые она находит. В процессе производства вы затем настраиваете свой веб-сервер для обслуживания файлов из STATIC_ROOT
при запросе, который начинается с STATIC_URL
. Если вы используете Django devserver для разработки, он будет автоматически обслуживать статические файлы.
Приложение staticfiles таким образом отключает загруженный пользователем носитель с носителя приложения, что упрощает развертывание, резервное копирование и управление версиями. До того, как приложение staticfiles было распространено, разработчики имели смешанные медиа файлы со статическими активами приложений.
1.3 docs для статических файлов неуклонно улучшаются; для более подробной информации смотрите .