django.contrib.humanize
¶
一組 Django 模板篩選器,可用於為資料添加「人性化」的處理。
要啟用這些篩選器,請將 'django.contrib.humanize'
添加到您的 INSTALLED_APPS
設定中。完成此操作後,請在模板中使用 {% load humanize %}
,您就可以使用下列篩選器。
apnumber
¶
對於數字 1-9,傳回拼寫出的數字。否則,傳回數字。這遵循美聯社的風格。
範例
1
變成one
。2
變成two
。10
變成10
。
您可以傳入整數或整數的字串表示形式。
intcomma
¶
將整數或浮點數(或兩者的字串表示形式)轉換為每三位數包含逗號的字串。
範例
4500
變成4,500
。4500.2
變成4,500.2
。45000
變成45,000
。450000
變成450,000
。4500000
變成4,500,000
。
如果啟用 格式本地化,將會被遵守,例如使用 'de'
語言
45000
變成'45.000'
。450000
變成'450.000'
。
intword
¶
將大型整數(或整數的字串表示形式)轉換為易讀的文字表示形式。將 1.0
翻譯為單數短語,將所有其他數值翻譯為複數,這對於某些語言可能不正確。對於超過 100 萬的數字最有效。
範例
1000000
變成1.0 million
。1200000
變成1.2 million
。1200000000
變成1.2 billion
。-1200000000
變成-1.2 billion
。
支援高達 10^100(古戈爾)的值。
如果啟用 格式本地化,將會被遵守,例如使用 'de'
語言
1000000
變成'1,0 Million'
。1200000
變成'1,2 Millionen'
。1200000000
變成'1,2 Milliarden'
。-1200000000
變成'-1,2 Milliarden'
。
naturalday
¶
對於當天或前後一天的日期,適當傳回「今天」、「明天」或「昨天」。否則,使用傳入的格式字串格式化日期。
參數:日期格式化字串,如 date
標籤中所述。
範例(當「今天」是 2007 年 2 月 17 日時)
16 Feb 2007
變成昨天
。17 Feb 2007
變成今天
。18 Feb 2007
變成明天
。任何其他日期都會根據給定的參數或
DATE_FORMAT
設定(如果沒有給定參數)進行格式化。
naturaltime
¶
對於 datetime 值,傳回表示它在多少秒、分鐘或小時之前的字串 – 如果該值超過一天,則回退到 timesince
格式。如果 datetime 值在未來,傳回值將自動使用適當的短語。
範例(當「現在」是 2007 年 2 月 17 日 16:30:00 時)
17 Feb 2007 16:30:00
變成現在
。17 Feb 2007 16:29:31
變成29 秒前
。17 Feb 2007 16:29:00
變成一分鐘前
。17 Feb 2007 16:25:35
變成4 分鐘前
。17 Feb 2007 15:30:29
變成59 分鐘前
。17 Feb 2007 15:30:01
變成59 分鐘前
。17 Feb 2007 15:30:00
變成一小時前
。17 Feb 2007 13:31:29
變成2 小時前
。16 Feb 2007 13:31:29
變成1 天,2 小時前
。16 Feb 2007 13:30:01
變成1 天,2 小時前
。16 Feb 2007 13:30:00
變成1 天,3 小時前
。17 Feb 2007 16:30:30
變成30 秒後
。17 Feb 2007 16:30:29
變成29 秒後
。17 Feb 2007 16:31:00
變成一分鐘後
。17 Feb 2007 16:34:35
變成4 分鐘後
。17 Feb 2007 17:30:29
變成一小時後
。17 Feb 2007 18:31:29
變成兩小時後
。18 Feb 2007 16:31:29
變成一天後
。26 Feb 2007 18:31:29
變成一週又兩天後
。
ordinal
¶
將整數轉換為字串形式的序數。
範例
1
變成1st
。2
變成2nd
。3
變成3rd
。
您可以傳入整數或整數字串表示。負整數將不變回傳。