Django 在模板标签中使用变量
Django use a variable within a template tag
我在我的 Django 模板中使用静态模板标签:
{% load staticfiles %}
<img src="{% static "my_app/myexample.jpg" %}" alt="My image"/>
但是我需要使用的文件名是我的模型对象的 属性(即我将其作为上下文传递给此模板的 {{ SampleModel.0.propertyValue }}
,而不是 "my_app/myexample.jpg"
. 但是我如何在静态模板标签中包含 {{ ... }}
呢?它会抛出一个错误。
有出路吗?
您可以在静态模板标签中使用变量。请注意,您不需要 {{
或 }}
{% static SampleModel.0.propertyValue %}
您可以在 Django 标签中使用上下文中的任何变量(自定义标签可能需要进行一些调整才能使用)。在你的情况下,这很好用:
{% static SampleModel.0.propertyValue %}
这种用法也有效:
{% with my_computed_var=SampleModel.0.propertyValue %}
{% static my_computed_var %}
{% endwith %}
{% static some_var|customFilter %}
有关详细信息,请参阅 the documentation about custom tags,它也与 Django 默认标签相关。
我在我的 Django 模板中使用静态模板标签:
{% load staticfiles %}
<img src="{% static "my_app/myexample.jpg" %}" alt="My image"/>
但是我需要使用的文件名是我的模型对象的 属性(即我将其作为上下文传递给此模板的 {{ SampleModel.0.propertyValue }}
,而不是 "my_app/myexample.jpg"
. 但是我如何在静态模板标签中包含 {{ ... }}
呢?它会抛出一个错误。
有出路吗?
您可以在静态模板标签中使用变量。请注意,您不需要 {{
或 }}
{% static SampleModel.0.propertyValue %}
您可以在 Django 标签中使用上下文中的任何变量(自定义标签可能需要进行一些调整才能使用)。在你的情况下,这很好用:
{% static SampleModel.0.propertyValue %}
这种用法也有效:
{% with my_computed_var=SampleModel.0.propertyValue %}
{% static my_computed_var %}
{% endwith %}
{% static some_var|customFilter %}
有关详细信息,请参阅 the documentation about custom tags,它也与 Django 默认标签相关。