如何将jinja变量传递给在Flask中创建的模板文件?

时间:2020-06-04 10:38:50

标签: python html templates flask jinja2

我有一个Jinja变量,并且已将该变量传递给HTML文件,但是在该HTML中,必须将该代码传递给其中包含的另一个HTML文件。

例如:

当前情况是这样的:

{% include "navbar.html" %}
<div>
.......
</div>

因此,在HTML文件中,我想将该变量传递给“ navbar.html”,因为我必须在“ navbar.html”文件中使用该变量。

如果有人能帮助我,那将是很棒的事情。

2 个答案:

答案 0 :(得分:2)

您无需执行任何操作,navbar.html应该可以访问包含它的文件中的所有变量。

我尝试了一个最小的示例,其中我将index.html传递给一个名为name的变量 和index.html由

组成
{% include "base.html" %}

在base.html中,我有:

{{name}}

哪个工作。

答案 1 :(得分:2)

您需要提供有关如何在代码中将变量传递到第一个HTML文件以及它们的外观的更多信息。如果您需要通过扩展了另一个HTML文件(nav.html)的HTML文件(例如index.html)传递变量,则可以使用Jinja格式:

nav.html:

    {{ variable1 }}

index.html:

     {% extends "nav.html" %}

app.py:

   return render_template("index.html", variable1=variable1)

希望这会有所帮助。