【问题标题】:Disable Template Cache Jinja2禁用模板缓存 Jinja2
【发布时间】:2016-10-01 04:49:22
【问题描述】:

我正在尝试禁用 Jinja2 的模板缓存。我环顾四周,发现 jinja 的环境有一个 cache_size 参数。我正在使用以下内容:

app.jinja_env = jinja2.Environment(
    cache_size = 0, 
    loader = jinja2.FunctionLoader(utils.load_template)
)

我正在使用自定义加载器根据域动态加载模板(应用程序服务于多个域)。不幸的是,使用它,看起来它覆盖了 Jinja 的默认过滤器和内置函数 - 使用

@app.route(...)
def page():
    render_template('template') # from flask import render_template

我收到 UndefinedError: 'url_for' is undefined 错误。这样做的正确方法是什么?

【问题讨论】:

    标签: python flask jinja2


    【解决方案1】:

    您可能想改为设置app.config['TEMPLATES_AUTO_RELOAD'] = True。如果缓存的版本不再匹配模板文件,它将重新加载模板,而不是禁用缓存。

    【讨论】:

      猜你喜欢
      • 2020-06-26
      • 2012-01-26
      • 2016-10-23
      • 2011-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-03
      • 2014-06-28
      相关资源
      最近更新 更多