f'lask 中自帶了很多簡單的過濾形式的過濾器
{# 過濾器調用方式 {{ 變量 | 過濾器名稱}} #}
safe過濾器,可以禁止轉義
{{ '<strong>hello</strong>' | safe }}
把大寫字母轉換成小寫
{{ 'HELLO' | lower}}
把小寫轉換成大寫
{{ 'hello'| upper }}
字符串反轉
{{ 'abc' | reverse}}
首字母大寫,其余字母小寫
{{ 'james' | capitalize }}
過濾html標簽 em標簽是斜體
{{ '<em>hellp</em>' | striptags}}
只顯list首個元素
{{ [100,90,86] | first }}
只顯list最后一個元素
{{ [100,90,86] | last }}
顯示一個list的長度
{{ [1,2] | length }}
對list所有元素求和
{{ [100,200] | sum }}
對於list進行排序
{{ [4,5,4,6,2,3,7] | sort}}
對語句塊進行過濾
{% filter upper%}
sfdghjkfgfhjhjg
gjajgkfkjiadjgoj
{% endfilter %}
鏈調用過濾器,按順序執行
{{ 'abc' | reverse | upper }}
除了這些flask自帶的過濾器外 還可以根據自己的需要自定義過濾器,來完成自己的業務需求
如下代碼:
在py文件中編寫簡單的代碼:
#自定義一個過濾器
def my_filter(vel):
return '$' + str(vel)
#將自定義過濾器函數賦給模板,第一個是參數,是自定義的過濾器名稱,第二個參數是在模板中調用的標識
app.add_template_filter(my_filter,'my_filter')
然后只需在html文件中調用自己設置的過濾器變量即可:
使用自定義過濾器
{{ 10000 | my_filter }}
是不是很簡單呀!