Jinja:如何覆盖超级块中的变量?

zha*_*lin 5 python templates jinja2

我有一个模板parent.tpl

{% set myvar = 'AAA' %}

{% block par %}
{{ myvar }}
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

和一个 child.tpl

{% extends "parent.tpl" %}

{% block par %}
{% set myvar = 'BBB' %}
{{ super() }}
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

child.tpl结果:

AAA
Run Code Online (Sandbox Code Playgroud)

但不是

BBB
Run Code Online (Sandbox Code Playgroud)

如何BBB使用变量覆盖获得输出?

谢谢

Igo*_*ist 2

如果您使用 Flask,则可以使用全局变量,例如g.myvar. 它将在每个模板中可用。

看一下Jinja2 中将变量从子模板传递到父模板