我偶然发现了一件非常奇怪的事情。我正在使用Django 2.0.7
我的模板中包含以下代码:
<img src="{% static 'external_page/assets/img/profile_pics/'|add:instructor.id|add:'.jpg' %}">
在部署时它会返回(这是错误的):
<img src="/static/.jpg">
但是如果我会改变:
|add:instructor.id
收件人:
|add:instructor.first_name
它可以正常工作,但是使用first_name而不是id。
奇怪的是,在此之前不久,我有以下代码。
...onclick="window.location='{% url 'profile' instructor.id %}'"
哪个工作正常。
下面是整个代码段,以提供更全面的视图:
template.html
<div class="team">
<div class="row row-instructor">
{% for instructor in instructors %}
<div class="card card-signup col-md-4" data-background-color="orange" style="cursor: pointer;" onclick="window.location='{% url 'profile' instructor.id %}'">
<div class="team-player">
<img src="{% static 'external_page/assets/img/profile_pics/'|add:instructor.id|add:'.jpg' %}" alt="Thumbnail Image" class="rounded-circle img-fluid img-raised">
<h4 class="title">{{ instructor.first_name }} {{instructor.last_name}}</h4>
答案 0 :(得分:1)
这是因为instructor.id
是一个整数。并且您正在尝试将其与字符串连接,即使在模板中也无法使用。
您可以使用slugify
将其转换为字符串,也可以创建自己的标记函数。
尝试一下:
{% with instructor.id|slugify as id %}
<img src="{% static 'external_page/assets/img/profile_pics/'|add:id|add:'.jpg' %}">
{% endwith %}