我需要在静态标记内连接两个字符串,我检查了之前关于如何在django模板中连接字符串的问题,我找到了 this answer ,但是当我使用该解决方案时, broser(Firefox)不显示图像。
详细说明: 这是我的代码,假设user.if的值是1:
{% with "images/my_twitter_wordcloud_"|add:user.id|add:".png" as image_static %}
<center>
<img src="{% static 'image_static' %}" width="650" height="350" style="margin-left: 10%;"/>
</center>
{% endwith %}
当我在浏览器中查看检查器时,它显示的图像如下:
<img src="/static/image_static" style="margin-left: 10%;" height="350" width="650">
我认为它应该是:
<img src="/static/images/my_twitter_wordcloud_"|add:user.id|add:"png" style="margin-left: 10%;" height="350" width="650">
我检查了关于添加引用的django文档,我尝试使用&#34;&#34;和&#34;&#34;添加后,但似乎django没有解释变量,我做错了什么?
感谢您的帮助。 PD:我为我的英语道歉。
编辑: 做@Selcuk说的话,检查员告诉我这个:
<img src="/static/.png" style="margin-left: 10%;" height="350" width="650">
很奇怪,即使我使用&#39;&#39;而不是&#34;&#34;,所以我不明白什么是错的,如果我把它(其中user.id的值是1):
<center><img src="{% static 'images/my_twitter_wordcloud_1.png' %}"
正确显示图像。
答案 0 :(得分:0)
删除image_static
周围的引号并使用变量名称。也就是说,替换以下内容:
{% static 'image_static' %}
用这个
{% static image_static %}
作为旁注,您还应在图片扩展名(.
)之前添加一个点(png
)。
答案 1 :(得分:0)
为了将来会来这里的人。
avarage_rating 可以包含此列表 [0,1,2,3,4,5] 中的任何单个值,包括小数。
所以使用单个变量作为值,加载动态图像如下。
{{avarage_rating | first }} == 第一个数字和 .svg 附加到它。 这里s是图像的名字首字母。
<code><img src="{% static 'img/s'%}{{avarage_rating | first }}.svg"><span>{{avarage_rating}}</span></code>