Use Jinja2 template engine in webpy

问题

如何在web.py中使用Jinja2 (http://jinja.pocoo.org/2/) 模板引擎?

方案

首先需要安装Jinja2和webpy(0.3), 然后使用下面的代码做测试:

  1. import web
  2. from web.contrib.template import render_jinja
  3. urls = (
  4. '/(.*)', 'hello'
  5. )
  6. app = web.application(urls, globals())
  7. render = render_jinja(
  8. 'templates', # 设置模板路径
  9. encoding = 'utf-8', # 编码
  10. )
  11. # 添加或者修改一些全局方法.
  12. #render._lookup.globals.update(
  13. # var=newvar,
  14. # var2=newvar2,
  15. #)
  16. class hello:
  17. def GET(self, name):
  18. return render.hello(name=name)
  19. if __name__ == "__main__":
  20. app.run()

模板文件: templates/hello.html

  1. Hello, .