Jinja2,jinjar
1.简介Jinja2是python的一种模板语言,基于Django的模板语言,与Django的模板语言有很多相似之处。同时,Jinja本身就是一个系统完整的Python模板语言。
2.为什么需要模板语言来为html中的if或其他流程控制语句编写?
在html中使用include,extend等方法复用html?
…
考虑到我们使用python进行web开发的情况,首先我们希望后端业务逻辑的代码层次清晰,前端代码尽量分离。Python层中获取的数据需要以HTML的形式显示,如下图:
需要生成的tr很多,所以使用模板语言。上图中的数据显示是用Jinja完成的:
发票中发票的{ % % } tr TD { { invoice . id } }/TD TD { { invoice . create _ time } }/TD TD { { invoice . start _ date } }/TD { { invoice . end _ date } }/TD TD { { invoice . username } }/TD TD $ { { invoice . revenue } }/TD $ { { invoice . payment } }/TD $ { { invoice . profit } }/TD./TR {%end for%}当然,这只是Jinja2的一个非常基础的应用。模板主要用于生成HTML代码。此外,还可以灵活利用模板的特性,结合Python进行运维。运维工具Ansible用的是Jinja2,可以用来生成配置文件。
3.先决条件Jinja2支持Python2.6.x,2.7.x,=3.3,
如果您使用的是Python3.2,您可以使用Jinjia22.6,因为Jinjia22.7中已经删除了对Python3.2的支持.
4.安装1.pip或Easy _ Install Easy _ Install Jin Jia 2或pip安装Jinjia22。下载源文件[https://pypi.python.org/pypi/Jinja2]
Python setup.py安装3。安装https://github.com/mitsuhiko/jinja2的开发版本
步骤1.git克隆git://github . com/mitsu hiko/jinja 2 . git
第二步。cd jinja2
第三步。ln -s jinja2 /usr/lib/python2。x/站点包
其中step3还可以执行pythonsetup.pydevelop。
5.Useage进口jinja2
1.配置模板文件搜索路径。
TemplateLoader=jinja2。file system loader(search path=/XXX )
2.创建环境变量
TemplateEnv=jinja2。环境(loader=TemplateLoader)
3.加载模板并呈现数据。
template=template env . get _ template(模板名称)
html=template . render(* *千瓦)
参考文献:
1.http://jinja.pocoo.org/docs/dev
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。