flask学习(十三):过滤器

1. 介绍和语法

介绍:过滤器可以处理变量,把原始的变量经过处理后再展示出来,作用的对象是变量

 

语法:

{{ avatar|default('xxx') }}

2. default过滤器:如果当前变量不存在,这时候可以指定默认值

实例1:

建立一个filter_demo.py文件

#encoding=utf-8 from flask import Flask, render_template app = Flask(__name__) @app.route('/') def index(): return render_template('index.html', avatar='https://avatar.csdn.net/B/8/F/1_weixin_38323645.jpg') if __name__ == '__main__': app.run()
View Code

index.html内容

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <img src="{{ avatar|default('https://avatar.csdn.net/9/D/E/1_yh0vlde8vg8ep9vge.jpg') }}" alt=""> </body> </html>
View Code

代码运行结果:

实例2:

去除filter_demo.py中的返回值

#encoding=utf-8 from flask import Flask, render_template app = Flask(__name__) @app.route('/') def index(): return render_template('index.html') if __name__ == '__main__': app.run()
View Code

代码运行结果:

3. length过滤器:求出列表/字符串/字典/元组的长度

实例1:

filter_demo.py文件

#encoding=utf-8 from flask import Flask, render_template app = Flask(__name__) @app.route('/') def index(): comments = [ { 'user': u'小翟', 'content': 'xxxx' }, { 'user': u'flask知识', 'content': 'xxxx' } ] return render_template('index.html', comments=comments) if __name__ == '__main__': app.run()
View Code

index.html文件

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <img src="{{ avatar|default('https://avatar.csdn.net/9/D/E/1_yh0vlde8vg8ep9vge.jpg') }}" alt=""> <hr> <p>评论数:{{ comments|length }}</p> <ul> {% for comment in comments %} <li> <a href="#">{{ comment.user }}</a> <p>{{ comment.content }}</p> </li> {% endfor %} </ul> </body> </html>
View Code

代码运行结果:

 


__EOF__

本文作者cnhkzyy
本文链接https://www.cnblogs.com/my_captain/p/9716325.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   cnhkzyy  阅读(233)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示