2013-11-17 5 views
2

Это DJ МодельИзображение из ImageField не загружается в шаблоне Django

class DJ(models.Model): 
    name = models.CharField(max_length=50, unique=True) 
    rank = models.IntegerField(default=None, blank=True, null=True) 
    img = models.ImageField(upload_to='/img/', height_field=None, width_field=None) 

Это, как я храню экземпляр DJ

dj = DJ(name=name, rank=rank, img='/img/'+rank+'.jpg') 
dj.save() 

MEDIA_ROOT и MEDIA_URL являются

MEDIA_ROOT = 'c:/jaskaran/dropbox/edmhunters/hunt/media/' 

MEDIA_URL = '/media/' 

Я включил это в файл urls.py

urlpatterns += staticfiles_urlpatterns() 
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

Это, как я экранным изображение в файле шаблона

<img src="{{ MEDIA_URL }}{{ dj.img }}" class="img-rounded"/> 

Когда я вижу исходный код

Когда я иду в http://127.0.0.1:8000/media/img/1.jpg изображение отображается в браузере, но это не отображается в шаблоне.

EDIT - Когда я проверяю элемент изображения, адрес отображается как http://127.0.0.1:8000/img/1.jpg. Почему не работает {{ MEDIA_URL }}?

+0

dj var правильно отправлен на просмотр? – alexander

+0

Да, имя и рейтинг DJ отображаются правильно. –

+1

Что показывает «{{MEDIA_URL}} {{dj.img}}" и "{{dj.img.url}}"? – alexander

ответ

0

Использование {{ dj.img.url }} вместо {{ MEDIA_URL }}{{ dj.img }} работ.

Смежные вопросы