Django floatformat и intcomma не форматируют строку правильно

Я пытался использовать floatformat и intcomma для форматирования строки с одним десятичным знаком и с точечным делителем для тысяч

Так что я хотел бы получить

1 -> 1,0
4000 -> 4.000,0
4567,56 -> 4.567,6

При использовании только intcomma я получаю 4.567,56 При использовании floatformat и intcomma я получаю 4,567,56

Я пробовал в настройках использовать

USE_I18N = True
USE_L10N = True
DECIMAL_SEPARATOR = ','
THOUSAND_SEPARATOR = '.'

но ничего не изменилось, как это работает?

Вы посмотрели документацию : https://docs.djangoproject.com/en/stable/ref/templates/builtins/#floatformat ?

Возможно, вам нужно сделать что-то вроде этого :

{{ value|floatformat:"g" }}

Если аргумент, переданный floatformat, имеет суффикс g, это заставит группировать по ТЫСЯЧАМ СЕПАРАТОРОВ для активной локали.

Так что вы можете проверить, какая локаль определена в вашей настройке LANGUAGE_CODE или использовать суффикс u.

Вернуться на верх