Django:包含字符串以在temp中创建指向静态图像的url

2024-07-03 06:14:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试加载一个图像,其url由一个可变的数值组成。 有没有一个模板唯一的解决方案,或者我真的要创建一个过滤器额外服务?我宁愿只写一行字。大致如下:

{% with urltemp="media/"|add:info.personid|stringformat:"s"|add:".jpg"  %}
        <img src="{% static urltemp %}" onerror="this.style.display='none'"/>
{% endwith %}

Tags: 图像infoadd模板url过滤器imgwith
2条回答

我知道你可以使用{% static your_url %},但我总是喜欢这样做:

我的图像在myproject/static/img/

我的{{STATIC_URL}}(设置.py变量)指向myproject/static

所以在一个模板中我通常这样做:<img src="{{STATIC_URL}}img/image_name.png" />

或者使用ImageField

{% for item in item_list%}
    <img src="{{ item.image.url }}" />
{% endfor %}

在您的情况下,您可以:

<img src="{{ MEDIA_URL }}{{ info.personid }}.jpg" />

{{ MEDIA_URL }}已以/结尾

  • 您需要MEDIA_URL在设置.py你知道吗

怎么样:

<img src="{% get_media_prefix %}{{ info.personid }}.jpg"/>

相关问题 更多 >