2010-10-20 74 views
2

我有以下代碼無法顯示對象圖像。但顯示正常的圖像很好。如何使用自定義模板標籤在Django模板中顯示圖像對象? (包括編碼)

我的模型

class News(models.Model): 
title----------- 
image = models.ImageField(upload_to='images') 
body------------ 

模板標籤編碼

from django import template 
register = template.Library() 
from ----.models import --- 

def funct(num): 
myobjects = News.objects.all()[:num] 
return {'objects': myobjects} 
register.inclusion_tag('news/template.html')(funct) 

模板編碼

{% for object in objects %} 
<li>{{ object.title }}</li> 
<li><img src="{{ MEDIA_URL }}images/{{ object.image }}" alt="image" /></li> 
<li>{{ object.body }}</p></li> 
{% endfor %} 

此代碼將所有的可變信息,如標題和正文中列表但它確實不顯示關聯的圖像。我已經嘗試了許多此代碼的變體,但沒有成功。這很奇怪,因爲當通過以下方式從圖像文件夾調用圖像時

<img src="{{ MEDIA_URL }}images/star.jpg" /> 

一切正常。當模型圖像被調用時會出現問題。 任何幫助解決這個問題,非常感謝

+0

但是與MEDIA_URL/images目錄中實際存在的對象關聯的圖像是什麼? – 2010-10-20 15:26:57

+0

是的,相關圖片位於MEDIA_URL/images目錄中 – Stu 2010-10-20 15:47:02

+0

您可以添加渲染HTML中實際顯示的內容嗎? – OmerGertel 2010-10-20 18:37:45

回答

5

這與自定義模板標記無關。如果您查看呈現頁面的源代碼,您會看到{{ object.image }}不輸出圖像的URL。您需要使用{{ object.image.url }}

相關問題