#python #django #django-models #django-admin #django-forms
#python #django #django-модели #django-администратор #django-формы
Вопрос:
Пытаюсь с определенной папкой отобразить изображение, но не получается, подскажите, что я делал не так и где, может чего-то не хватает? Все изображения находятся в папке C:diptodo
. Используйте runserver.
settings.py
MEDIA_ROOT = 'C:/dip/todo/'
MEDIA_URL = 'http://127.0.0.1:8000/media/'
ADMIN_MEDIA_PREFIX = '/admin-media/'
admin.py
class StatAdmin( admin.ModelAdmin ):
list_display = ( 'title', 'image')
models.py
class Stat( models.Model ):
title = models.CharField(max_length = 255,verbose_name = "Статистика" )
image = models.ImageField(upload_to='media')
def __unicode__( self ):
return u"%s" % self.title
class Meta:
verbose_name = 'Статистика'
verbose_name_plural = 'Диаграммы'
urls.py
urlpatterns = patterns( '',
(r'^site_media/(?P<path>.*)$', 'django.views.static.serve',{'document_root': settings.MEDIA_ROOT}), )
base_site.html
{% extends "admin/base.html" %}
{% load i18n %}
{% block title %}{{ title }} | Реестр инплантатов{% endblock %}
{% block branding %}
<h1 id="site-name">Реестр инплантатов</h1>
{% endblock %}
Комментарии:
1. Нам нужно будет просмотреть ваш код представления и код шаблона, который отображает изображение, чтобы иметь возможность помочь вам.
Ответ №1:
Ваш МЕДИА-URL говорит:
MEDIA_URL = 'http://127.0.0.1:8000/media/'
Но в URL-адресах у вас есть:
(r'^site_media/(?P<path>.*)$', 'django.views.static.serve',{'document_root': settings.MEDIA_ROOT}), )
Попробуйте изменить site_media
на media
, и это должно сработать
Комментарии:
1. Нет, это не работает, я не уверен, что все правильно настроено в шаблоне ‘base_site.html и madels.py
2. @user723603 — этот ответ устраняет хотя бы часть проблемы, но нам понадобится больше деталей, чтобы помочь вам.
3. 0 голосов «Против» согласны с этим вопросом, и я не совсем понимаю, что требуется описать в view.py и что именно вы хотите добавить в шаблон base_site.html .?