有没有办法在Flask上对每个请求的Jinja2根目录进行更改?现在我做:有没有办法改变Jinja2模板加载目录每个请求?
app.jinja_loader = FileSystemLoader(template_directory)
,但它似乎每个进程只有一次工作(过程选择在第一次正确的目录,然后在那里停留,不管有多少变化使)...
有没有办法在Flask上对每个请求的Jinja2根目录进行更改?现在我做:有没有办法改变Jinja2模板加载目录每个请求?
app.jinja_loader = FileSystemLoader(template_directory)
,但它似乎每个进程只有一次工作(过程选择在第一次正确的目录,然后在那里停留,不管有多少变化使)...
事实证明,一个神社缓存错误阻止了正确的模板从加载,所以禁用缓存工程:
app.jinja_env.cache = None
你可以试试这个:
app._get_current_object().jinja_loader = FileSystemLoader(template_directory)
文档http://flask.pocoo.org/docs/api/#notes-on-proxies或http://werkzeug.pocoo.org/docs/local/#werkzeug.local.LocalProxy._get_current_object
随着更多的调查,它看起来像Jinja缓存模板的内存,但我不知道它在哪里。如果我更改源中的uptodate函数始终返回False,它总是重新加载模板并运行。 – 2011-02-07 15:28:27
将cache_size设置为0不起作用,但是... – 2011-02-07 15:37:15
在jinja源代码中将cache_size设置为0,但在Flask中设置选项时我无法使其工作,我必须做错误的操作。 – 2011-02-07 16:00:50