这是我的settings.py:
STATIC_URL = '/static/'
# Additional locations of static files
STATICFILES_DIRS = (
'/home/userName/project/app/static',
)
假设我的视图正在将ImageField对象传递给模板。所以如文档中所述:
https://docs.djangoproject.com/en/1.5/ref/models/fields/#django.db.models.fields.files.FieldFile.url
我可以通过
访问图片的网址 {{ FieldFile.url }}
在我的模板中。如果我尝试访问图像的URL,它可以工作,但是,我还需要能够加载静态。我想做这样的事情:
{% load staticfiles %}
<img src="{% static "{{ FieldFile.url }}" %}" alt="" />
然而,这不起作用。假设FieldFile.url是
images/imageName.jpg
当我做的时候
<img src="{% static "images/imageName.jpg" %}" alt="" />
它可以工作,但是当我使用
时它不起作用{{ FieldFile.url }}
出于某种原因,怎么来的?
注意:当我尝试
时{% load staticfiles %}
<img src="{% static "{{ FieldFile.url }}" %}" alt="" />
使用谷歌浏览器和'检查元素',它显示了这个
<img src="/static/%7B%7B%20FieldFile.url%20%7D%7D" alt="" />
答案 0 :(得分:4)
由于您已经位于模板标记内,因此不需要{{ }}
:
<img src="{% static FieldFile.url %}" alt="" />