主頁 > 知識庫 > Django零基礎入門之常用過濾器詳解

Django零基礎入門之常用過濾器詳解

熱門標簽:鶴壁手機自動外呼系統(tǒng)違法嗎 銀川電話機器人電話 企業(yè)微信地圖標注 怎么辦理400客服電話 萊蕪電信外呼系統(tǒng) 高德地圖標注收入咋樣 B52系統(tǒng)電梯外呼顯示E7 地圖標注多個 沈陽防封電銷電話卡

引言:

前面講過了Django中使用模板變量。使用很簡單,那么有沒有什么關于模板變量的騷操作呢?
答案是肯定有的,這就是本文要講的——過濾器!

1.過濾器

(1)純干貨講解:

作用: 對變量進行過濾。在真正渲染出來之前,過濾器會根據(jù)功能處理好變量,然后得出結果后再替換掉原來的變量展示出來。

  • 語法:{{ fruits|lower }}
  • 管道符號進行鏈式調(diào)用(可以理解為嵌套使用?。?,比如實現(xiàn)一個功能,先把所有字符變成小寫,再把第一個字符轉換成大寫。
  • 語法:{{fruits|lower|capfirst}}
  • 使用參數(shù):過濾器可以使用參數(shù),在過濾器名稱后面使用冒號,加上雙引號,雙引號里面再加上參數(shù),比如要把一個字符串中所有的空格去掉,則可以使用cut過濾器——語法: {{fruits|cut:" "}}
  • 注意:使用參數(shù)的時候,冒號和參數(shù)之間不能有任何空格,一定要緊挨著!

(2)Django中實戰(zhàn)使用——常用的過濾器:

①項目目錄下的views.py文件:

from django.shortcuts import render
from django.http import HttpResponse

# Create your views here.

from datetime import datetime
def index(request):
    test="THIS IS A LIST!"
    list=["A","B","C","D","E"]
    data={
        'test':test,
        'xx':'',
        'num1':1,
        'num2':2,
        'list':list,
        'now':datetime.now(),
        'html':'h1>hello django!!!/h1>',
        'float':3.1415926
    }
    return render(request, "index.html", data)

②項目目錄下templates模板文件夾下的模板文件index.html:

!DOCTYPE html>
html lang="en">
head>
    meta charset="UTF-8">
    title>測試!/title>
/head>
body>

{#沒做處理的變量:#}
{{ test }}br>

{#設置了默認值的變量  在這個值被django認為是False的時候會使用此默認值。比如:空字符串,None。#}
{{ xx|default:'xxxxx' }}br>

{#設置了只有為None時才使用默認值的變量#}
{{ xx|default_if_none:'aaaaa'}}br>

{#變?yōu)樾懞蟮淖兞?}
{{ test|lower }}br>

{#先變?yōu)樾懺賹⑹鬃帜复髮懞蟮淖兞?}
{{ test|lower|capfirst }}br>

{#兩個數(shù)字變量相加   add:字符串相加,數(shù)字相加,列表相加,如果失敗,將會返回一個空字符串#}
{{ num1|add:num2 }}br>

{#兩個字符串變量相加#}
{{ test|add:xx }}br>

{#列表變量的第一個元素#}
{{ list|first }}br>

{#列表變量的最后一個元素#}
{{ list|last }}br>

{#默認的data日期時間格式#}
{{ now|date }}br>
{#默認的time時間格式#}
{{ now|time }}br>
{#這是data過濾器的年月日24小時制時間格式#}
{{ now|date:'Y/m/d/H:i:s' }}br>
{#這是time過濾器的時分秒12小時制時間格式#}
{{ now|time:'h:i:s' }}br>

{#這是字符串的join方法  跟python中join一樣的用法#}
{{ list|join:'oooo' }}br>

{#這是字符串的長度方法#}
{{ test|length }}br>

{#這是列表的長度是否為4#}
{{ list|length_is:4 }}br>

{#下面這倆有xxx.html類型的,針對html,截斷標簽中的字符,而不會截斷標簽#}
{#這是字符串只顯示4個字符,其余省略(但是占3位)#}
{{ test|truncatechars:7 }}br>
{#這是字符串只顯示2個單詞,其余省略(不占位)#}
{{ test|truncatewords:2 }}br>

{#這是字符串的切片#}
{{ test|slice:'1:4' }}br>

{#這是列表的切片#}
{{ list|slice:'2' }}br>

{#這是含html標簽的字符串#}
{{ html }}br>

{#這是去掉字符串中的html標簽#}
{{ html|striptags }}br>

{#這是關掉自動轉義,使字符串中html標簽生效#}
{{ html|safe }}br>

{#這是沒做處理的小數(shù)#}
{{ float }}br>
{#這是保留了一位小數(shù)#}
{{ float|floatformat }}br>
{#這是保留了兩位小數(shù)#}
{{ float|floatformat:'2' }}

/body>
/html>

③效果展示:

date和time過濾器格式:

拓展——簡介自動轉義:

什么是自動轉義?
自動轉義是將變量的一些特殊字符,比如左箭頭()、右箭頭(>)轉義成html代碼,這樣做的目的是為了處理一些不安全的變量。

:轉義成lt;
>:轉義成gt;
‘:轉義成#39;
“:轉義成quot;
:轉義成

到此這篇關于Django零基礎入門之常用過濾器詳解的文章就介紹到這了,更多相關Django過濾器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 詳解Django模板層過濾器和繼承的問題
  • Django 模板中常用的過濾器實現(xiàn)
  • python使用布隆過濾器的實現(xiàn)示例
  • Python filter過濾器原理及實例應用
  • Django-rest-framework中過濾器的定制實例
  • 布隆過濾器的概述及Python實現(xiàn)方法
  • Python+Redis實現(xiàn)布隆過濾器

標簽:安慶 銀川 呼倫貝爾 葫蘆島 湘西 烏魯木齊 呼倫貝爾 三亞

巨人網(wǎng)絡通訊聲明:本文標題《Django零基礎入門之常用過濾器詳解》,本文關鍵詞  Django,零,基礎,入門,之,常用,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Django零基礎入門之常用過濾器詳解》相關的同類信息!
  • 本頁收集關于Django零基礎入門之常用過濾器詳解的相關信息資訊供網(wǎng)民參考!
  • 推薦文章