Подтвердить что ты не робот

В чем разница между статическими файлами и медиафайлами в Django?

Я перехожу к 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? Должны ли они быть отдельными каталогами? В чем разница?

4b9b3361

Ответ 1

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

Ответ 2

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

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

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

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