jinja2介绍
2024-09-05 12:44:17
jinja2介绍
jinja2是Flask作者开发的一个模板系统,起初是仿django模板的一个模板引擎,为Flask提供模板支持,由于其灵活,快速和安全等优点被广泛使用。
jinja2的优点
jinja2之所以被广泛使用是因为它具有以下优点:
1.相对于Template,jinja2更加灵活,它提供了控制结构,表达式和继承等。
- 相对于Mako,jinja2仅有控制结构,不允许在模板中编写太多的业务逻辑。
- 相对于Django模板,jinja2性能更好。
- Jinja2模板的可读性很棒。
安装jinja2
由于jinja2属于第三方模块,首先需要对其进行安装
`pip3 install jinja2`
测试模板是否安装成功
`python ``-``c ``"import jinja2"` `# 没有报错就表示安装成功``# 必须用双引号"`
jinja2语法
作为一个模板系统,它还提供了特殊的语法,我们按照它支持的语法进行编写之后,就能使用jinja2模块进行渲染。
基本语法
在jinja2中,存在三种语法:
- 控制结构 {% %}
- 变量取值 {{ }}
- 注释
jinja2变量
jinja2模板中使用 {{ }} 语法表示一个变量,它是一种特殊的占位符。当利用jinja2进行渲染的时候,它会把这些特殊的占位符进行填充/替换,jinja2支持python中所有的Python数据类型比如列表、字段、对象等。
this is a dicectory:{{ mydict['key'] }}
this is a list:{{ mylist[3] }}
this is a object:{{ myobject.something() }}
jinja2中的过滤器
变量可以通过“过滤器”进行修改,过滤器可以理解为是jinja2里面的内置函数和字符串处理函数。
常用的过滤器有:
过滤器名称 | 说明 |
---|---|
safe | 渲染时值不转义 |
capitialize | 把值的首字母转换成大写,其他子母转换为小写 |
lower | 把值转换成小写形式 |
upper | 把值转换成大写形式 |
title | 把值中每个单词的首字母都转换成大写 |
trim | 把值的首尾空格去掉 |
striptags | 渲染之前把值中所有的HTML标签都删掉 |
join | 拼接多个值为字符串 |
replace | 替换字符串的值 |
round | 默认对数字进行四舍五入,也可以用参数进行控制 |
int | 把值转换成整型 |
最新文章
- java replace和replaceAll
- C#之事件
- Linux运行与控制后台进程的方法:nohup, setsid, &;, disown, screen
- Struts2--ONGL--值栈
- 测试经验总结(“二次开发”)
- [py] 导入模块 reload(sys)
- Python+Django+Eclipse 在Windows下快速开发自己的网站
- mysql基础:列类型--整型
- app.use(express.static)设置静态文件目录小解
- Failed to initialize component [org.apache.catalina.webresources.JarResource
- 【转载】【吵架】能力 说清自己的能力。表达清楚 ;别人发飙你也要撕b;换位思考,把自己当领导层
- C#软件开发实例.私人订制自己的屏幕截图工具(九)使用自己定义光标,QQ截图时的光标
- Android基础之6.0系统以上的权限分配
- nodejs学习笔记<;七>; 路由
- 一键安装lnmp1.5
- [Winform]使用winform制作远程桌面管理工具
- ETL__pentaho__SPOON_PDI
- 安卓monkey自动化测试,软硬回车
- Jquery 中 .trigger 的用法
- golang环境安装
热门文章
- Windows 全绿色安装Mysql
- 对opencv读取的图片进行像素调整(1080, 1920) 1.cv2.VideoCapture(构造图片读取) 2.cv2.nameWindow(构建视频显示的窗口) 3.cv2.setWindowProperty(设置图片窗口的像素) 4.video_capture(对图片像素进行设置)
- Android studio 自动导入(全部)包 import (转)
- Centos7 Devstack [Rocky] 重启后无法联网
- How to run a VBA macro when new mail is received in Outlook
- MyBatis Mapper Demo
- 七十八:flask.Restful之flask-Restful标准化返回参数以及准备数据
- Python 自动化
- jenkins凭证与新建任务
- golang实现四种排序(快速,冒泡,插入,选择)