Python 将HTML字符串标记为安全的Jinja2
我在jinja2中有一个HTML标记,我想在其中嵌入一个变量 Format.html:Python 将HTML字符串标记为安全的Jinja2,python,flask,jinja2,Python,Flask,Jinja2,我在jinja2中有一个HTML标记,我想在其中嵌入一个变量 Format.html: {% set color="red" %} {% set tag="<img src='{{ color }}.png' />" %} This is red {{ tag|safe }}. {%set color=“red”%} {%set tag=”“%} 这是红色的{tag | safe}}。 如果我将标记标记为安全,它不会呈现变量颜色。如果我不将其呈现为安全的,它会清理HTML img
{% set color="red" %}
{% set tag="<img src='{{ color }}.png' />" %}
This is red {{ tag|safe }}.
{%set color=“red”%}
{%set tag=”“%}
这是红色的{tag | safe}}。
如果我将
标记
标记为安全,它不会呈现变量颜色
。如果我不将其呈现为安全的,它会清理HTML img标记,并且我不能嵌入我的图像。如何正确嵌入图像?我不想写出img标记,因为我需要它在整个代码中作为一个可重用的变量。问题是不能在另一个模板标记中使用{{}
。但是,您可以在模板标记内连接字符串和变量color
,如下所示:
方法#1:使用~
符号。从Jinja2开始,它将变量转换为字符串并连接它们
{% set tag = "<img src='" ~ color ~ ".png' />" %}
{%set tag=”“%}
或
方法#2:使用过滤器:
{%set-tag=”“|格式(颜色)%}
问题是不能在另一个模板标记中使用{{}
。但是,您可以在模板标记内连接字符串和变量color
,如下所示:
方法#1:使用~
符号。从Jinja2开始,它将变量转换为字符串并连接它们
{% set tag = "<img src='" ~ color ~ ".png' />" %}
{%set tag=”“%}
或
方法#2:使用过滤器:
{%set-tag=”“|格式(颜色)%}