flask-过滤器

       过滤器(本质是函数,在模板中使用)的作用就是计算以及格式化数据,过滤器的语法格式:{{变量|过滤器}}

#coding=utf-8

from flask import Flask,render_template   #render_template 位模板

app = Flask(__name__)

@app.route('/')

def hello_world():

      return render_template('index.html')   #index.html文件在同级文件夹static中

if __name__=='__main__':
      app.run(debug=True)

在浏览器中输入127.0.0.1:5000/index.html 页面出现index.html的内容

####自定义过滤器,在视图中定义函数

#coding=utf-8

from flask import Flask,render_template 

app = Flask(__name__)

@app.route('/')

def hello_world():

      return render_template('index.html')  

# 自定义过滤器,在视图函数定义函数

def double_filter(ls):

      return ls[: :-2]

#把自定义的过滤器添加到模板中,第一个参数为函数名,第二个参数为自定义的过滤器名称

app.add_template_filter(double_filter,'db2') 

# 这样在index.html文件中就可以用过滤器db2  <p>{{'abcdefg' | db2}}</p>

#自定义过滤器2 ,如果自定义过滤器和内置过滤器重名,会覆盖内置过滤器,即改变之前过滤器的意思

“”“

<p>{{'abcdefg' | reverse}}</p>正常情况下将字符串反转,手动定义同名reverse过滤器,那么reverse过滤器为自定义的意义

”“”

@app.template_filter(db3)

def double_filter(ls):

      return ls[: :-3]

# 这样在index.html文件中就可以用过滤器db3  <p>{{'abcdefg' | db3}}</p>

if __name__=='__main__':
      app.run(debug=True)

猜你喜欢

转载自my.oschina.net/u/3753872/blog/1649465