flask中過濾器的使用詳解-創新互聯

過濾器

創新互聯成立與2013年,是專業互聯網技術服務公司,擁有項目成都網站建設、網站建設網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元順義做網站,已為上家服務,為順義各地企業和個人服務,聯系電話:13518219792

過濾器的本質就是函數。有時候我們不僅僅只是需要輸出變量的值,我們還需要修改變量的顯示,甚至格式化、運算等等,而在模板中是不能直接調用 Python 中的某些方法,那么這就用到了過濾器。

使用方式:

過濾器的使用方式為:變量名 | 過濾器。

{{variable | filter_name(*args)}}

如果沒有任何參數傳給過濾器,則可以把括號省略掉, flask中過濾器支持鏈式調用

{{variable | filter_name}}

常見內建過濾器

字符串操作

  • safe:禁用轉義               <p>{{ '<em>hello</em>' | safe }}</p>
  • capitalize:把變量值的首字母轉成大寫,其余字母轉小寫          <p>{{ 'hello' | capitalize }}</p>
  • lower:把值轉成小寫      <p>{{ 'HELLO' | lower }}</p>
  • upper:把值轉成大寫       <p>{{ 'hello' | upper }}</p>
  • title:把值中的每個單詞的首字母都轉成大寫 <p>{{ 'hello' | title }}</p>
  • reverse:字符串反轉      <p>{{ 'olleh' | reverse }}</p>
  • format:格式化輸出        <p>{{ '%s is %d' | format('name',17) }}</p>
  • striptags:渲染之前把值中所有的HTML標簽都刪掉       <p>{{ '<em>hello</em>' | striptags }}</p>
  • truncate: 字符串截斷           <p>{{ 'hello every one' | truncate(9)}}</p>

列表操作

  • first:取第一個元素          <p>{{ [1,2,3,4,5,6] | first }}</p>
  • last:取最后一個元素       <p>{{ [1,2,3,4,5,6] | last }}</p>
  • length:獲取列表長度       <p>{{ [1,2,3,4,5,6] | length }}</p>
  • sum:列表求和          <p>{{ [1,2,3,4,5,6] | sum }}</p>
  • sort:列表排序            <p>{{ [6,2,3,1,5,4] | sort }}</p>

自定義過濾器

過濾器的本質是函數。當模板內置的過濾器不能滿足需求,可以自定義過濾器。自定義過濾器有兩種實現方式:

  • 一種是通過Flask應用對象的 add_template_filter 方法
  • 通過裝飾器來實現自定義過濾器

重要:自定義的過濾器名稱如果和內置的過濾器重名,會覆蓋內置的過濾器。

需求:添加列表反轉的過濾器

方式一

通過調用應用程序實例的 add_template_filter 方法實現自定義過濾器。該方法第一個參數是函數名,第二個參數是自定義的過濾器名稱:

def do_listreverse(li):
  # 通過原列表創建一個新列表
  temp_li = list(li)
  # 將新列表進行返轉
  temp_li.reverse()
  return temp_li

app.add_template_filter(do_listreverse,'lireverse')

另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

分享名稱:flask中過濾器的使用詳解-創新互聯
URL分享:http://m.kartarina.com/article40/cddgho.html

成都網站建設公司_創新互聯,為您提供營銷型網站建設網頁設計公司移動網站建設網站收錄Google響應式網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都定制網站建設
主站蜘蛛池模板: 日韩精品无码Av一区二区| 亚洲av片不卡无码久久| 国产Av激情久久无码天堂| 久久午夜无码鲁丝片午夜精品 | 人禽无码视频在线观看| 亚洲国产成AV人天堂无码| 深夜a级毛片免费无码| 日韩精品无码一区二区三区不卡 | 无码国内精品久久人妻麻豆按摩 | 一本色道无码道在线观看| 成年午夜无码av片在线观看| 无码人妻精品一区二区三18禁 | 人妻少妇看A偷人无码精品 | 亚洲毛片无码专区亚洲乱| 丰满亚洲大尺度无码无码专线| yy111111少妇影院无码| 无码人妻丰满熟妇区五十路百度| 无码精油按摩潮喷在播放| 亚洲国产成人片在线观看无码| 曰产无码久久久久久精品 | 久久无码av亚洲精品色午夜| 日韩人妻无码一区二区三区久久| 一本一道中文字幕无码东京热| 亚洲日韩精品无码专区加勒比☆| 中文字幕人妻无码专区| 国产午夜无码片在线观看影院| 亚洲精品无码久久久久久久| 国产精品毛片无码| 亚洲国产AV无码一区二区三区| 色综合久久无码五十路人妻| 成年无码av片在线| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 无码囯产精品一区二区免费| MM1313亚洲精品无码久久| 亚洲中文字幕无码av在线| 色综合久久中文字幕无码| 亚洲av激情无码专区在线播放| 人妻丰满熟妇aⅴ无码| 精品人妻少妇嫩草AV无码专区 | 亚洲中文无码永久免费| 亚洲中文字幕久久无码|