学习
实践
活动
工具
TVP
写文章

补充谈谈Flask 的Jinja2

上篇简单说了Flask Web的为什么要有模板,有哪些模板,今天再简单说说Jinja2模板引擎的较为具体内容。

关于渲染模板,默认情况下,Flask是在程序文件夹的templates子文件夹中寻找模板的。Flask提供的render_template函数把Jinja2模板引擎继承到程序中。关于变量,模板中使用{}结构表示一个变量,它是特殊占位符,告诉模板引擎这个位置的值从渲染模板时使用的数据中获取。Jinja2能识别所有类型的变量,甚至包括列表,字典,对象。还可以使用|过滤器修改变量。关于控制结构,Jinja2提供多种控制结构,可以改变模板的渲染流程,包括分支结构if-else,循环结构for。还支持宏,宏类似于python中的函数,通常会将宏保存到单独的文件中,以便重复使用,引入宏用关键字macro。关于模板代码复用,模板具有继承方式,类似于python的class继承。继承的实现使用extends关键字,继承模板获取基类模板使用super关键字。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180818A0POBN00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券