django.contrib.humanize
Набор Django-шаблонов фильтров, полезных для добавления «человеческого» прикосновения к данным.
Чтобы активировать эти фильтры, добавьте 'django.contrib.humanize' в свой параметр INSTALLED_APPS. После этого вы можете использовать {% load humanize %} в шаблоне, и у вас будут доступны следующие фильтры.
apnumber
Для чисел от 1 до 9 возвращает число прописью. В противном случае возвращает само число. Это соответствует стилю Associated Press.
Примеры:
-
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 переводится как единственное число, а остальные числовые значения — как множественное, что может быть неверно для некоторых языков. Лучше всего работает для чисел, превышающих 1 миллион.
Примеры:
-
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.
Примеры (когда «сегодня» — 17 февраля 2007 года):
-
16 Feb 2007становитсяyesterday. -
17 Feb 2007становитсяtoday. -
18 Feb 2007становитсяtomorrow. - Любой другой день форматируется в соответствии с переданным аргументом или параметром
DATE_FORMAT, если аргумент не указан.
naturaltime
Для значений datetime возвращает строку, представляющую количество секунд, минут или часов назад, — с переходом к формату timesince, если значение старше суток. Если значение datetime находится в будущем, возвращаемое значение автоматически будет использовать подходящую фразу.
Примеры (когда «теперь» — 17 февраля 2007 года в 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.
Вы можете передать целое число или строковое представление целого числа.
© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/3.2/ref/contrib/humanize/