gpt4 book ai didi

python - 全局函数中的 Jinja2 框架变量

转载 作者:行者123 更新时间:2023-11-28 17:22:44 28 4
gpt4 key购买 nike

我有一个全局函数test

from jinja2.utils import contextfunction

@contextfunction
def test(context):
context.get_all()

在我的测试中,我这样调用它......

{% set i = 0 %}
{% for j in range(0, 10) %}
{% set k = 0 %}
{{ test() }}
{% endfor %}

testcontext 中结束的唯一变量是 ijk 是“不可读的”。除了将它们传递给 test(j, k)

之外,还有什么方法可以访问它们吗?

最佳答案

根据 github issue with a similar concern ,您定义为 jk 的变量是在本地设置的,而不是全局设置的。您尝试调用的函数将无法识别变量 k,除非您将它传递给该函数。这是记录在案的行为。

相关的stackoverflow问题:

Can a Jinja variable's scope extend beyond in an inner block?

Jinja2: Change the value of a variable inside a loop

关于python - 全局函数中的 Jinja2 框架变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40616807/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com