【问题标题】:Slugify within a static tag in django templates在 django 模板中的静态标签内进行 Slugify
【发布时间】:2013-06-21 23:49:20
【问题描述】:

在我使用的一个模板中

{% for key, value in dict.items %}
    ...
    <img src="{% static 'img/{{ key|slugify }}.jpg' %}"/>
    ...
{% endfor %}

但输出不是预期的,所以我想不能在static 标记中使用模板过滤器。

关于如何实现这一点的任何建议?

编辑:上面dict的键是对应于jpg图像文件名的字符串。

【问题讨论】:

  • 您遇到的错误是什么?为什么不将图像存储为带有slug 字段的对象?
  • 错误是一种“urlencoded”字符串而不是文件名(即使键中没有特殊或非拉丁字符)。至于图像作为对象的问题,我不希望对特定图像的数据库进行额外的查询。

标签: django django-templates django-staticfiles


【解决方案1】:

使用get_static_prefix标签:

{% load static %}
{% for key, value in dict.items %}
    ...
    <img src="{% get_static_prefix %}img/{{ key|slugify }}.jpg"/>
    ...
{% endfor %}

【讨论】:

    猜你喜欢
    • 2018-05-23
    • 2014-01-09
    • 2016-05-18
    • 2018-05-04
    • 2014-07-25
    • 1970-01-01
    • 2014-05-23
    • 1970-01-01
    • 2014-04-03
    相关资源
    最近更新 更多