django.contrib.humanize
¶A set of Django template filters useful for adding a “human touch” to data.
To activate these filters, add 'django.contrib.humanize'
to your
INSTALLED_APPS
setting. Once you’ve done that, use
{% load humanize %}
in a template, and you’ll have access to the following
filters.
apnumber
¶For numbers 1-9, returns the number spelled out. Otherwise, returns the number. This follows Associated Press style.
Examples:
1
becomes one
.
2
becomes two
.
10
becomes 10
.
You can pass in either an integer or a string representation of an integer.
intcomma
¶Converts an integer or float (or a string representation of either) to a string containing commas every three digits.
Examples:
4500
becomes 4,500
.
4500.2
becomes 4,500.2
.
45000
becomes 45,000
.
450000
becomes 450,000
.
4500000
becomes 4,500,000
.
Format localization will be respected if enabled,
e.g. with the 'de'
language:
45000
becomes '45.000'
.
450000
becomes '450.000'
.
intword
¶Converts a large integer (or a string representation of an integer) to a friendly text representation. Works best for numbers over 1 million.
Examples:
1000000
becomes 1.0 million
.
1200000
becomes 1.2 million
.
1200000000
becomes 1.2 billion
.
Values up to 10^100 (Googol) are supported.
Format localization will be respected if enabled,
e.g. with the 'de'
language:
1000000
becomes '1,0 Million'
.
1200000
becomes '1,2 Millionen'
.
1200000000
becomes '1,2 Milliarden'
.
naturalday
¶For dates that are the current day or within one day, return “today”, “tomorrow” or “yesterday”, as appropriate. Otherwise, format the date using the passed in format string.
Argument: Date formatting string as described in the date
tag.
Examples (when ‘today’ is 17 Feb 2007):
16 Feb 2007
becomes yesterday
.
17 Feb 2007
becomes today
.
18 Feb 2007
becomes tomorrow
.
Any other day is formatted according to given argument or the
DATE_FORMAT
setting if no argument is given.
naturaltime
¶For datetime values, returns a string representing how many seconds,
minutes or hours ago it was – falling back to the timesince
format if the value is more than a day old. In case the datetime value is in
the future the return value will automatically use an appropriate phrase.
Examples (when ‘now’ is 17 Feb 2007 16:30:00):
17 Feb 2007 16:30:00
becomes now
.
17 Feb 2007 16:29:31
becomes 29 seconds ago
.
17 Feb 2007 16:29:00
becomes a minute ago
.
17 Feb 2007 16:25:35
becomes 4 minutes ago
.
17 Feb 2007 15:30:29
becomes 59 minutes ago
.
17 Feb 2007 15:30:01
becomes 59 minutes ago
.
17 Feb 2007 15:30:00
becomes an hour ago
.
17 Feb 2007 13:31:29
becomes 2 hours ago
.
16 Feb 2007 13:31:29
becomes 1 day, 2 hours ago
.
16 Feb 2007 13:30:01
becomes 1 day, 2 hours ago
.
16 Feb 2007 13:30:00
becomes 1 day, 3 hours ago
.
17 Feb 2007 16:30:30
becomes 30 seconds from now
.
17 Feb 2007 16:30:29
becomes 29 seconds from now
.
17 Feb 2007 16:31:00
becomes a minute from now
.
17 Feb 2007 16:34:35
becomes 4 minutes from now
.
17 Feb 2007 17:30:29
becomes an hour from now
.
17 Feb 2007 18:31:29
becomes 2 hours from now
.
18 Feb 2007 16:31:29
becomes 1 day from now
.
26 Feb 2007 18:31:29
becomes 1 week, 2 days from now
.
ordinal
¶Converts an integer to its ordinal as a string.
Examples:
1
becomes 1st
.
2
becomes 2nd
.
3
becomes 3rd
.
You can pass in either an integer or a string representation of an integer.
Dec 25, 2023