我正在谷歌应用引擎上尝试在jinja2中使用继承。但到目前为止我还没有成功。你能指点我做错了吗?
这是我的base.html
:
{{text}}
{% block title %}
Failure
{% endblock %}
此模板由title.html
:
{% extends "base.html" %}
{% block title %}
World!!
{% endblock %}
两个模板都位于同一目录/templates/wiki
。
这是我加载模板并渲染base.html
的方式:
import os
import jinja2
import webapp2
template_dir = os.path.join(os.path.dirname(__file__), '../templates/wiki')
jinja_env = jinja2.Environment(loader = jinja2.FileSystemLoader(template_dir), autoescape = True)
class MyHandler(webapp2.RequestHandler):
def get(self):
templ = jinja_env.get_template('base.html')
self.response.out.write(templ.render(text = 'Hello,'))
假定的输出是
你好,世界!!!
但我可以得到:
你好,失败
Jinja2版本是2.6。
答案 0 :(得分:4)
您必须渲染title.html而不是base.html。