亚洲精品久久国产精品37p,亚洲av无码av制服另类专区,午夜直播免费看,玩弄人妻少妇500系列视频,无码人妻久久久一区二区三区

Django(31)模版中常見的過濾裝置

免費(fèi)模板常見過濾裝置

在免費(fèi)模板中,有時(shí)必須對(duì)一些數(shù)據(jù)信息開展解決之后才可以應(yīng)用。一般在Python中我們都是根據(jù)涵數(shù)的方式來進(jìn)行的。而在免費(fèi)模板中,則是根據(jù)過濾裝置來完成的。過濾裝置應(yīng)用的是|來應(yīng)用。
 

add

將傳進(jìn)去的主要參數(shù)加上到原先的值上邊。這一過濾裝置會(huì)試著將值和主要參數(shù)轉(zhuǎn)化成整形美容隨后開展求和。假如轉(zhuǎn)化成整形美容全過程中失敗了,那麼會(huì)將值和主要參數(shù)開展拼湊。如果是字符串?dāng)?shù)組,那麼會(huì)拼湊成字符串?dāng)?shù)組,如果是目錄,那麼會(huì)拼湊成一個(gè)目錄。實(shí)例編碼以下:

{{ value|add:"2" }}

假如value是相當(dāng)于4,那麼結(jié)果將是6。假如value是相當(dāng)于一個(gè)一般的字符串?dāng)?shù)組,例如abc,那麼結(jié)果將是abc2。add過濾裝置的源碼以下:

def add(value, arg):
    """Add the arg to the value."""
    try:
        return int(value)   int(arg)
    except (ValueError, TypeError):
        try:
            return value   arg
        except Exception:
            return ''

 

cut

清除值中全部特定的字符串?dāng)?shù)組。類似python中的replace(args,"")。實(shí)例編碼以下:

{{ value|cut:" " }}

之上實(shí)例可能清除value中全部的空格字符。cut過濾裝置的源碼以下:

def cut(value, arg):
    """Remove all values of arg from the given string."""
    safe = isinstance(value, SafeData)
    value = value.replace(arg, '')
    if safe and arg != ';':
        return mark_safe(value)
    return value

 

date

將一個(gè)日期依照特定的文件格式,恢復(fù)出廠設(shè)置成字符串?dāng)?shù)組。實(shí)例編碼以下:

# 數(shù)據(jù)信息
context = {
    "birthday": datetime.now()
}

# 免費(fèi)模板
{{ birthday|date:"Y/m/d" }}

那麼可能輸出2018/02/01。在其中Y意味著的是四位數(shù)據(jù)的年代,m意味著的是倆位數(shù)據(jù)的月份,d意味著的是倆位數(shù)據(jù)的日。
也有大量時(shí)間格式化的方法。見下表。

文件格式標(biāo)識(shí)符 敘述 實(shí)例
Y 四位數(shù)據(jù)的年代 2020
m 倆位數(shù)據(jù)的月份 01-12
n 月份,1-9前邊沒有0作為前綴 1-12
d 倆位數(shù)據(jù)的天 01-31
j 天,但是1-9前邊沒有0作為前綴 1-31
g 鐘頭,12小時(shí)文件格式的,1-9前邊沒有0作為前綴 1-12
h 鐘頭,12小時(shí)文件格式的,1-9前邊有0作為前綴 01-12
G 鐘頭,24小時(shí)文件格式的,1-9前邊沒有0作為前綴 1-23
H 鐘頭,24小時(shí)文件格式的,1-9前邊有0作為前綴 01-23
i 分鐘,1-9前邊有0作為前綴 00-59
s 秒,1-9前邊有0作為前綴 00-59

 

default

假如值被評(píng)定為False。例如[]""None,{}等這種在if分辨中為False的值,都是會(huì)應(yīng)用default過濾裝置給予的初始值。實(shí)例編碼以下:

{{ value|default:"nothing" }}

假如value是相當(dāng)于一個(gè)空的字符串?dāng)?shù)組。例如"",那麼之上編碼可能輸出nothing
 

default_if_none

假如值是None,那麼可能應(yīng)用default_if_none給予的初始值。這一和default有差別,default是全部被評(píng)定為False的都是會(huì)應(yīng)用初始值。而default_if_none則僅有這一值是相當(dāng)于None的情況下才會(huì)應(yīng)用初始值。實(shí)例編碼以下:

{{ value|default_if_none:"nothing" }}

假如value是相當(dāng)于""也即空字符串,那麼之上會(huì)輸出空字符串。假如value是一個(gè)None值,之上編碼才會(huì)輸出nothing。
 

first

返回列表/元組/字符串?dāng)?shù)組中的第一個(gè)原素。實(shí)例編碼以下:

{{ value|first }}

假如value是相當(dāng)于['a','b','c'],那麼輸出可能是a。
 

last

返回列表/元組/字符串?dāng)?shù)組中的最后一個(gè)原素。實(shí)例編碼以下:

{{ value|last }}

假如value是相當(dāng)于['a','b','c'],那麼輸出可能是c。
 

floatformat

應(yīng)用四舍五入的方法恢復(fù)出廠設(shè)置一個(gè)浮點(diǎn)數(shù)種類。假如這一過濾裝置沒有傳送一切主要參數(shù)。那麼總是在小數(shù)位后保存一個(gè)小數(shù),假如小數(shù)后邊全是0,那麼總是保留整數(shù)。自然還可以傳送一個(gè)主要參數(shù),標(biāo)志實(shí)際要保存好多個(gè)小數(shù)。

  1. 要是沒有傳送主要參數(shù):
value 免費(fèi)模板編碼 輸出
34.23234 {{ value|floatformat }} 34.2
34.000 {{ value|floatformat }} 34
34.260 {{ value|floatformat }} 34.3
  1. 假如傳送主要參數(shù):
value 免費(fèi)模板編碼 輸出
34.23234 {{ value|floatformat:3 }} 34.232
34.000 {{ value|floatformat:3 }} 34.000
34.26000 {{ value|floatformat:3 }} 34.260

 

join

相近與Python中的join,將目錄/元組/字符串?dāng)?shù)組用特定的標(biāo)識(shí)符開展拼湊。實(shí)例編碼以下:

{{ value|join:"/" }}

假如value是相當(dāng)于['a','b','c'],那麼之上編碼將輸出a/b/c。
 

length

獲得一個(gè)目錄/元組/字符串?dāng)?shù)組/詞典的長(zhǎng)短。實(shí)例編碼以下:

{{ value|length }}

假如value是相當(dāng)于['a','b','c'],那麼之上編碼將輸出3。假如valueNone,那麼之上將回到0。
 

lower

將值中全部的標(biāo)識(shí)符所有轉(zhuǎn)化成小寫字母。實(shí)例編碼以下:

{{ value|lower }}

假如value是相當(dāng)于Hello World。那麼之上編碼將輸出hello world。
 

upper

類似lower,只不過將特定的字符串?dāng)?shù)組所有轉(zhuǎn)化成英文大寫。

 

random

在被給的目錄/字符串?dāng)?shù)組/元組中任意的挑選一個(gè)值。實(shí)例編碼以下:

{{ value|random }}

假如value是相當(dāng)于['a','b','c'],那麼之上編碼會(huì)在目錄中任意挑選一個(gè)。
 

safe

標(biāo)識(shí)一個(gè)字符串?dāng)?shù)組是安全性的。也即會(huì)關(guān)閉這一字符串?dāng)?shù)組的全自動(dòng)轉(zhuǎn)義。實(shí)例編碼以下:

{{value|safe}}

假如value是一個(gè)不包含一切特殊符號(hào)的字符串?dāng)?shù)組,例如<a>這類,那麼之上編碼便會(huì)把字符串?dāng)?shù)組一切正常的鍵入。假如value是一串html編碼,那麼之上編碼可能把這個(gè)html編碼3D渲染到電腦瀏覽器中。
 

slice

類似Python中的切成片實(shí)際操作。實(shí)例編碼以下:

{{ some_list|slice:"2:" }}

之上編碼可能給some_list從4開始做切成片實(shí)際操作。
 

stringtags

刪掉字符串?dāng)?shù)組中全部的html標(biāo)識(shí)。實(shí)例編碼以下:

{{ value|striptags }}

假如value<strong>hello world</strong>,那麼之上編碼可能輸出hello world。
 

truncatechars

假如給出的數(shù)組長(zhǎng)度超出了過濾裝置特定的長(zhǎng)短。那麼便會(huì)開展激光切割,而且會(huì)拼湊三個(gè)點(diǎn)來做為句號(hào)。實(shí)例編碼以下:

{{ value|truncatechars:5 }}

假如value是相當(dāng)于北京歡迎您~,那麼輸出的結(jié)果是北京市...。很有可能你能想,為何不容易北京歡迎您...呢。由于三個(gè)點(diǎn)也占了三個(gè)標(biāo)識(shí)符,因此 北京市 三個(gè)點(diǎn)的字符長(zhǎng)度便是5。
 

truncatechars_html

類似truncatechars,只不過不容易激光切割html標(biāo)識(shí)。實(shí)例編碼以下:

{{ value|truncatechars:5 }}

假如value是相當(dāng)于<p>北京歡迎您~</p>,那麼輸出將是<p>北京市...</p>。

評(píng)論(0條)

刀客源碼 游客評(píng)論