django - Django 将变量值添加到 {%static 'path' %}
问题描述
在我的 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 中?
解决方案
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
.
推荐阅读
- c - C opendir() 没有打开目录?
- python - Python ValueError:无法解码 JSON 对象(间歇性)
- typescript - TypeScript 在调用站点理解条件类型,但在使用站点不理解?
- swift - UITableViewAutomaticDimension changes multiple times
- python - 我可以使用 scipy-approx_fprime() 进行张量流操作吗?
- java - mapstruct 通过将子 dto 与现有子实体合并来更新映射一对多关系
- r - 查找具有特定字母组合的表格元素并删除最后几个字符
- javascript - 循环遍历EXTJS中的数组时如何获取范围
- laravel-5 - 如何在 laravel 的所有页面中使用相同的变量或查询结果
- php - 使用从我的选项标签中检索到的信息来查询我的数据库以获取更多信息