这是一个基本问题,可能与Jinja2 PrefixLoader或ChoiceLoader有关。
在Python 3.6上,我们使用此命令加载
jinja2.FileSystemLoader( searchpath= "\\template_folder\\")
在Windows 7上,我们的文件结构如下。
- folder_bbb * subfile.txt - template_folder * template_file - folder_aaa * subfile.txt
从template_file我们成功使用此命令
{% include "folder_aaa/subfile.txt" %}
现在我们希望将文件向上移动一级,然后编写
{% include "../folder_bbb/subfile.txt" %}
但是这不起作用,抱怨找不到文件。
正确的写作方式是什么?感谢。
答案 0 :(得分:0)
您可以指定装载程序中的所有路径
jinja2.FileSystemLoader(["c:\\template_folder\\", "c:\\folder_bbb\\"])
并参考没有特定路径的包含块
{% include "subfile.txt" %}
将按顺序搜索路径,以便按照您的说法将文件向上移动一级,即可找到该文件。 (您需要模板本身的template_folder路径。)