jinjia2
jinjia2语句来自flask框架下的一个模板组件
本次教程非常容易理解 适合咱们这些学废了
jinjia2简介
要了解jinja2,那么需要先理解模板的概念。模板在Python的web开发中广泛使用,它能够有效的将业务逻辑和页面逻辑分开,使代码可读性增强、并且更加容易理解和维护。
模板简单来说就是一个其中包涵占位变量表示动态的部分的文件,模板文件在经过动态赋值后,返回给用户。 --> 可以理解为渲染o/)
jinjin2分为三大语法块
{# #}----- 注释块
{% for %}或者 {%if %} -----循环
{{ }} -------变量取值
使用一个合理的语法
在py文件中我们创建变量 要取值显示到某个文件下的html下中 返回
return render_.______到html中
用到{{ }}----放入变量取值
循环的块
下面是一个简单的jinja2循环例子
{% for file in filenames %}
{{ }}
---------//放入的变量 {% endfor %}或者循环中嵌套–else
{% for file in filenames %} {{%if _|leng>=3%}}---------//判断空格时写的变量 是否长度大于等于3
{{ }}
---------//放入的变量 {%end for%}---结束for循环- {{ }}
- ----else的输出内容 {% end if %}----结束if判断
0#jinja2变量
jinja2模板中使用 {{ }} 语法表示一个变量,它是一种特殊的占位符。当利用jinja2进行渲染的时候,它会把这些特殊的占位符进行填充/替换,jinja2支持python中所有的Python数据类型比如列表、字段、对象等。
jinja2中的过滤器
变量可以通过“过滤器”进行修改,过滤器可以理解为是jinja2里面的内置函数和字符串处理函数。
常用的过滤器有:
过滤器名称 说明
safe 渲染时值不转义
capitialize 把值的首字母转换成大写,其他子母转换为小写
lower 把值转换成小写形式
upper 把值转换成大写形式
title 把值中每个单词的首字母都转换成大写
trim 把值的首尾空格去掉
striptags 渲染之前把值中所有的HTML标签都删掉
join 拼接多个值为字符串
replace 替换字符串的值
round 默认对数字进行四舍五入,也可以用参数进行控制
int 把值转换成整型那么如何使用这些过滤器呢? 只需要在变量后面使用管道(|)分割,多个过滤器可以链式调用,前一个过滤器的输出会作为后一个过滤器的输入。
jinja2的继承和Super函数
<!DOCTYPE html> <html lang="en"> <head> {% block head %} <link rel="stylesheet" href="style.css"/> <title>{% block title %}{% endblock %} - My Webpage</title> {% endblock %} </head> <body> <div id="content">{% block content %}{% endblock %}</div> <div id="footer"> {% block footer %} <script>This is javascript code </script> {% endblock %} </div> </body> </html>