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变成yesterday。17 Feb 2007变成today。18 Feb 2007变成tomorrow。任何其他日期都将根据给定的参数或
DATE_FORMAT设置(如果未给出参数)进行格式化。
naturaltime¶
对于日期时间值,返回一个字符串,表示多少秒、分钟或小时前——如果值超过一天,则回退到timesince格式。如果日期时间值在将来,返回值将自动使用适当的短语。
示例(当“现在”是 2007 年 2 月 17 日 16:30:00 时)
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。
ordinal¶
将整数转换为其序数字符串。
示例
1变成1st。2变成2nd。3变成3rd。
您可以传入整数或整数的字符串表示形式。负整数保持不变。