App Engine:模板中的子文件夹

时间:2012-07-08 03:08:55

标签: python google-app-engine templates

我使用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

请帮帮我。

谢谢:)

1 个答案:

答案 0 :(得分:3)

您可以在jinja2环境中添加更多文件夹:

jinja_environment = jinja2.Environment(
  loader=jinja2.FileSystemLoader(['templates', 'templates\blog'])
)