我的代码中有一个变量深埋在一些遗留代码中。我不想花一整天时间搜索它,而是想从jinja模板中打印出变量。那可能吗?
我试过{% print var %}
,但似乎没有做任何事情。
答案 0 :(得分:8)
输出变量的语法是{{var}},{%}}用于块和其他指令。但是,听起来这个变量没有传递给模板。检查一下。
如果您正在进行大量调试,请尝试Flask-DebugToolbar,它会打印出传递给模板的所有变量,这样您就不必使用这样的print语句了。有用的东西。
答案 1 :(得分:2)
您需要上下文处理器。
放置.py文件的示例:
@app.context_processor
def get_legacy_var():
return dict(get_legacy_var=your_get_legacy_var_function())
然后在你的模板上:
{{ get_legacy_var }}
这将在模板生成期间调用Python,将获取变量的值,并将其返回到模板。