跬步 On Coding

Jinja2 模版引擎

参考

API

from jinja2 import Environment, FileSystemLoader
env = Environment(loader=FileSystemLoader(templ_dir))

从templ_dir目录中加载模版,定义模版的环境信息。
用字典渲染模版:

tmp_unicode = env.get_template(tempname).render(**dict)

渲染返回的是unicode,所以需要编码encode(‘utf-8’)。

模版语法

  • {{ }} 变量引用
  • {% %} 逻辑语句if for等

语法同Django模版语法类似。

过滤器

env.filters[name] = func # 注册name名称的过滤器函数func

{{ data|filter }} # 这里filter函数以data作为参数,返回函数运算结果