LINUX.ORG.RU

django, правило в urls.py для залитых файлов

 , image upload


0

1

Новости, аплоад картинки к новости.

в модели:

    preview_img = models.ImageField(upload_to='images/%Y/%m')
Подскажите, что в urls.py вписывать, а то оно у меня, ессно, не отдаёт картинки, которые в шаблоне показываю, отдаёт 404 и ругается на отсутствие правила для таких ссылок.

★★

Последнее исправление: Reaper (всего исправлений: 2)

Допиши в самый конец urls.py

try:
    from django.conf import settings
    if settings.DEBUG:
        urlpatterns += patterns('',
            url(r'^media/(.*)$', 'django.views.static.serve', kwargs={'document_root': settings.MEDIA_ROOT}),
        )
except:
    pass

Это для devel-сервера. На рабочем отдавать средствами веб-сервера.

pilotys
()
Ответ на: комментарий от pilotys

И проверка на DEBUG, полагаю, тоже, т.к. хэндлер продакшн-сервера обработает своё правило прежде Django.

Reaper ★★
() автор топика
Ответ на: комментарий от Reaper

Чтобы ты не понял что у тебя чтото сломалось.

zz ★★★★
()
Ответ на: комментарий от Reaper

Да. Достаточно просто написать

url(r'^media/(.*)$', 'django.views.static.serve', kwargs={'document_root': settings.MEDIA_ROOT})

в patterns

Код завернут в проверки чтоб его можно было не задумываясь оставить на продакшене и не получить проблем при любых стечениях обстоятельств.

pilotys
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.