在我的django项目中,我必须在用%static定义的某些路径中添加前缀,如下所示:
<link rel="stylesheet" href="{% static "css/animate.css" %}">
我必须添加从我的视图传递的{{subpath}}值,我尝试这样做:
<link rel="stylesheet" href="{% static "{{ subpath }}/css/animate.css" %}">
但是变量的实现就像文本一样,我也尝试过:
<link rel="stylesheet" href="{% static {{ subpath }}"/css/animate.css" %}">
但发生错误。
如何将变量值正确地添加到href中?
答案 0 :(得分:1)
您可以使用add
[Django-doc]模板过滤器标签执行字符串连接:
<link rel="stylesheet" href="{% static subpath|add:"/css/animate.css" %}">
例如:
>>> from django.template import Template, Context
>>> Template('{% load static %}{% static subpath|add:"/css/animate.css" %}').render(Context({'subpath': 'foobar'}))
'/static/foobar/css/animate.css'
如您所见,subpath
变量与'foobar'
相关联。因此,在{% static .. %}
中,我们用subpath|add:"/css/animate.css"
构造了一个新字符串foobar/css/animate.css
。通过使用{% static .. %}
标记,此标记(根据默认设置)将被/static/foobar/css/animate.css
替换。