我正在使用它来输出,
{{ movie.img }}
我得到的输出应该是这样的,
u'<img src="//upload.wikimedia.org/wikipedia/en/thumb/8/8a/Dark_Knight.jpg/220px-Dark_Knight.jpg" alt="" height="327" width="220" >\nTheatrical release poster'
我如何只输出 html 图像部分?我不希望戏剧发行海报出现在输出中。
我正在使用它来输出,
{{ movie.img }}
我得到的输出应该是这样的,
u'<img src="//upload.wikimedia.org/wikipedia/en/thumb/8/8a/Dark_Knight.jpg/220px-Dark_Knight.jpg" alt="" height="327" width="220" >\nTheatrical release poster'
我如何只输出 html 图像部分?我不希望戏剧发行海报出现在输出中。
由于您只是将其作为文本获取,因此您最好的解决方案是编写一个模板过滤器,该过滤器将去除不在<img>
html 标记中的内容。
如果对象是 ImageField(或 FileField),则只能调用 url 属性,{{ movie.img.url }}
更新
好的,这是一个基本的,可能过于幼稚的模板过滤器供您使用。
from django import template
from django.template.defaultfilters import stringfilter
import re
register = template.Library()
@register.filter(is_safe=True)
@stringfilter
def get_img_tag(value):
result = re.search("<.*?>", value)
if result:
return result.group()
return value
采用:
{{ movie.img|get_img_tag|safe }}