【Flask专题】10.模板-过滤(PyCharm)
模板-过滤(PyCharm)
在HTML页面设置默认值
当取不到message的值时,显示默认值
<body>
{
{message|default(No message!)}}
</body>
支持链式操作
{
{message|default(no message!)|title}}
title:标题格式 其他一些字符串过滤器: default(‘****’):默认值 title:标题格式 capitalize:首字母大写 lower:小写 upper:大写 reverse:反转 trim:取空格 format():格式化 safe:转义 {% autoescape False%} 。。。{% endautoescape %}: 开启/关闭自动转义
format()例举
{
{ %s有%d本书。|format(张三, 10)}}
safe例举
{
{mes}}<br>
{
{mes|safe}}
autoescape例举
{% autoescape False %}
{
{mes}}<br>
{
{mes1}}
{% endautoescape %}
数值过滤器例举
abs round:小数点后位数设置
@app.route(/filter)
def use_filter():
return render_template(index2.html, money=1.2345)
<!-- 取小数点后两位,向下取整-->
{
{money|round(2,floor)}}
列表的过滤
first last length sort:数值排序 sum join():对列表进行拼接操作
@app.route(/filter)
def use_filter():
fs = [张三, 李四, 王五, ]
return render_template(index2.html, fs=fs)
{
{fs}}
<hr>
{
{fs|first}} -- {
{fs|last}}
<hr>
{
{fs|length}}
<hr>
{
{fs|join(--)}}
字典的过滤
keys() values() items()
@app.route(/filter)
def use_filter():
users = [{
a: 145, b: 255}, {
a: 98, b: 21}, {
a: 12, b: 600}]
return render_template(index2.html, users=users)
{
{users}}
<hr>
<!--对每组字典中键为b的值进行降序排列-->
{% for user in users|sort(attribute=b, reverse=True) %}
{
{user}}
{% endfor %}
对字典类型进行遍历
原始数据:<br>
{
{users}}
<hr>
对字典进行遍历:<br>
{% for user in users %}
{% for key,value in user.items() %}
<p>{
{key}}---{
{value}}</p>
<hr>
{% endfor %}
{% endfor %}
上一篇:
IDEA上Java项目控制台中文乱码
