Чем отличаются STATIC_ROOT, STATIC_URL, MEDIA_ROOT, MEDIA_URL и подобные?

Ну собственно суть вопроса изложена уже выше, чем отличаются STATIC_ROOT, STATIC_URL, MEDIA_ROOT, MEDIA_URL?
Читаю документацию и вижу фигу, не могу понять

А вообще задача сделать слайдер с загружаемыми изображениями из админки, каким образом в шаблоне указывать путь к данному загруженному изображению? Можно ли как то через 'django.core.context_processors.request'?

model.py
class Slide(models.Model):
    image = models.ImageField(u'Изображение', upload_to='static/slides')
    header = models.CharField(u'Заголовок', max_length=120, blank=False)
    caption = models.CharField(u'Описание', max_length=250, blank=False)
  • Вопрос задан
  • 565 просмотров
Пригласить эксперта
Ответы на вопрос 2
mututunus
@mututunus
Backend developer (Python, Golang)
STATIC_ROOT - место хранения на диске ваших статичных файлов (js, стили, изображения)
STATIC_URL - префикс url'a до этих файлов

MEDIA_ROOT - место хранения на диске файлов, загружаемых пользователями
MEDIA_URL - префикс url'a до этих файлов
Ответ написан
Комментировать
@marazmiki
Укротитель питонов
В MEDIA_ROOT сохраняются файлы, которые загрузил пользователь. Или которые сгенерировались в результате работы скриптов. А STATIC_ROOT предназначен для хранения "нединамических" файлы, которые самостоятельно не изменяются в процессе работы и являются частью проекта. Стили, скрипты, картинки оформления, шрифты.

А MEDIA_URL и STATIC_URL — урлы, по которым доступны директории для медиафайлов и статики соответственно

Что касается слайдера: загружаемые файлы попадут в MEDIA_ROOT. А получить URL каждого кадра можно так:

<img src="{{ slide.image.url }}">
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы