如何从jinja宏在flask上下文中设置变量?
我想创建一个宏,如果以前调用过它,它需要跟踪。因此,我必须在宏的请求上下文中设置一个变量,但我不知道如何才能做到这一点。比如:如何从jinja宏在flask上下文中设置变量?,flask,jinja2,Flask,Jinja2,我想创建一个宏,如果以前调用过它,它需要跟踪。因此,我必须在宏的请求上下文中设置一个变量,但我不知道如何才能做到这一点。比如: {% macro my_macro() -%} {% set g.foo = "bar" %} <-- Error {{ g.get('foo') }} {%- endmacro %} {%macro my_macro()-%} {%set g.foo=“bar”%}在那里使用do而不是set命令: {% do g.update({"foo"
{% macro my_macro() -%}
{% set g.foo = "bar" %} <-- Error
{{ g.get('foo') }}
{%- endmacro %}
{%macro my_macro()-%}
{%set g.foo=“bar”%}在那里使用do
而不是set
命令:
{% do g.update({"foo": "bar"}) %}
请注意,do
命令在默认情况下是有效的,因此必须启用jinja2.ext.do
as