Форум сайта python.su
Добрый день. Pyhon 3, django 1.8, pillow установлен Есть модель с ImageField. Нужно отобразить на странице картинку из модели. Мне кажется я напутал в сеттингсах(вообще я новичек и с картинками первый раз работаю).
tovar_img = models.ImageField(upload_to='uploads', default='/img/tovar.jpg')
{{ tovar.tovar_img }}
STATIC_URL = '/static/' MEDIA_ROOT = os.path.join(BASE_DIR, 'static', 'uploads') MEDIA_URL = '/uploads/' STATICFILES_DIRS = [ ('static', 'C:/Python34/mynewage/static'), ]
Офлайн
Статика - от слова “статичный”, то есть неизменяемый, постоянный. Это файлы твоего проекта, которые отдаются клиенту и не генерируются автоматически: джаваскрипт, картинки интерфейса, звуки, стили - все что составляет ресурсы клиентской части. Когда проект состоит из нескольких приложений (а это почти всегда так), то выполняется команда collectstatic, и вся статика собирается в один каталог.
Медиа - это все медиа файлы, которые составляют контент, то есть загружаются и удаляются по мере работы сайта. Статика и медиа должны находиться в разных каталогах.
Офлайн
а в чем причина отображения юрл картинки , а не самой картинки?
Офлайн
Xa_xooА откуда джанга знает, что тебе нужна картинка, а не её УРЛ?
а не самой картинки?
Офлайн
поправил немного, но до конца не справился..
Картинку не находит, хотя путь верный..
в юрл прописано
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) urlpatterns += staticfiles_urlpatterns()
STATIC_URL = '/static/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media') MEDIA_URL = '/media/' STATICFILES_DIRS = [ ('static', 'C:/Python34/mynewage/static'), ]
'django.core.context_processors.media',
tovar_img = models.ImageField(upload_to='img/tovar', blank=False, default='img/tovar/tovar.jpg')
<td width="250"><img width="235" height="150" src="{{ MEDIA_URL }}{{ tovar.tovar_img }}"></td>
Офлайн
<img width="235" height="150" src="{{ tovar.tovar_img.url }}">
Офлайн
тот же эффект(
Офлайн
{% load staticfiles %}
<img src=“{% static ”inforse1.jpg“ %}” width=“100%” height=“100%” >
Я сделал так и у меня получилось, правда не в адимнке а в шаблоне
Офлайн