我使用template
分隔HTML和Python代码。我创建模板文件夹。在这个文件夹中,我创建了index.html。这是我的代码:
template_dir = os.path.join(os.path.dirname(__file__),'templates')
jinja_environment = jinja2.Environment(autoescape=True, loader=jinja2.FileSystemLoader(template_dir))
def render(self, template, **params):
t = jinja_environment.get_template(template)
return t.render(params)
使用渲染(' index.html'):成功,没问题。
但是当我创建子文件夹:templates / blog并在此文件夹中,我创建了blog.html。我将上面的模板从templates
更改为templates/blog
。这是我的代码:
template_dir = os.path.join(os.path.dirname(__file__),'templates/blog')
jinja_environment = jinja2.Environment(autoescape=True, loader=jinja2.FileSystemLoader(template_dir))
但是,当我使用渲染(' blog.html')时,我收到了错误:TemplateNotFound: blog.html
。
请帮帮我。
谢谢:)
答案 0 :(得分:3)
您可以在jinja2环境中添加更多文件夹:
jinja_environment = jinja2.Environment(
loader=jinja2.FileSystemLoader(['templates', 'templates\blog'])
)