一系列Django的模板過濾器,有助于向數(shù)據(jù)添加“人文關(guān)懷”。
把'django.contrib.humanize'添加到INSTALLED_APPS設(shè)置來激活這些過濾器。 執(zhí)行以上步驟之后,在模板中使用{% load humanize %} ,你就可以訪問到下面的過濾器了·。
基數(shù)詞
對于數(shù)字1~9,返回拼寫出來的數(shù)字。否則返回數(shù)字本身。這樣遵循了出版的格式。
例如:
- 1 會變成one。
- 2 會變成 two。
- 10 會變成 10。
你可以傳遞整數(shù),或者整數(shù)的字符串形式。
整數(shù)間的逗號
將整數(shù)轉(zhuǎn)化為字符串,每三位之間帶一個逗號。
例如:
- 4500 會變成 4,500。
- 45000 會變成 45,000
- 450000 會變成 450,000。
- 4500000 會變成 4,500,000。
如果啟動了格式本地化,將會被遵循。例如,在德語('de')中:
- 45000 會變成 '45.000'。
- 450000 會變成 '450.000'。
你可以傳遞整數(shù),或者整數(shù)的字符串形式。
整數(shù)詞組
將一個大的整數(shù)轉(zhuǎn)化為友好的文字表示形式。適用于超過一百萬的數(shù)字。
例如:
- 1000000 會變成 1.0 million。
- 1200000 會變成 1.2 million。
- 1200000000 會變成 1.2 billion。
支持高達10的100次方 (Googol) 的整數(shù)。
如果啟動了格式本地化將會被遵循。例如,在德語('de')中:
- 1000000 會變成 '1,0 Million'。
- 1200000 會變成 '1,2 Million'。
- 1200000000 會變成 '1,2 Milliarden'。
你可以傳遞整數(shù),或者整數(shù)的字符串形式。
自然日期
對于當天或者一天之內(nèi)的日期, 返回“今天”,“明天”或者“昨天”,視情況而定。否則,使用傳進來的格式字符串給日期格式化。
參數(shù):日期的格式字符串在date標簽中描述。
例如(其中“今天”是2007年2月17日):
- 16 Feb 2007 會變成 yesterday。
- 17 Feb 2007 會變成 today。
- 18 Feb 2007 會變成 tomorrow。
其他日期按照提供的參數(shù)格式化,如果沒提供參數(shù)的話,將會按照DATE_FORMAT 設(shè)置。
自然時間
對于日期時間的值,返回一個字符串來表示多少秒、分鐘或者小時之前 —— 如果超過一天之前,則回退為使用timesince格式。如果是未來的日期時間,返回值會自動使用合適的文字表述。
例如(其中“現(xiàn)在”是2007年2月17日16時30分0秒):
- 17 Feb 2007 16:30:00 會變成 now。
- 17 Feb 2007 16:29:31 會變成 29 seconds ago。
- 17 Feb 2007 16:29:00 會變成 a minute ago。
- 17 Feb 2007 16:25:35 會變成 4 minutes ago。
- 17 Feb 2007 15:30:29 會變成 59 minutes ago。
- 17 Feb 2007 15:30:01 會變成 59 minutes ago。
- 17 Feb 2007 15:30:00 會變成 an hour ago。
- 17 Feb 2007 13:31:29 會變成 2 hours ago。
- 16 Feb 2007 13:31:29 會變成 1 day, 2 hours ago。
- 16 Feb 2007 13:30:01 會變成 1 day, 2 hours ago。
- 16 Feb 2007 13:30:00 會變成 1 day, 3 hours ago。
- 17 Feb 2007 16:30:30 會變成 30 seconds from now。
- 17 Feb 2007 16:30:29 會變成 29 seconds from now。
- 17 Feb 2007 16:31:00 會變成 a minute from now。
- 17 Feb 2007 16:34:35 會變成 4 minutes from now。
- 17 Feb 2007 17:30:29 會變成 an hour from now。
- 17 Feb 2007 18:31:29 會變成 2 hours from now。
- 18 Feb 2007 16:31:29 會變成 1 day from now。
- 26 Feb 2007 18:31:29 會變成 1 week, 2 days from now。
序數(shù)詞
將一個整數(shù)轉(zhuǎn)化為它的序數(shù)詞字符串。
例如:
- 1 會變成 1st。
- 2 會變成 2nd。
- 3 會變成 3rd。
你可以傳遞整數(shù),或者整數(shù)的字符串形式。