Django вывод float, как правильно?

В template все float числа выводит через запятую :), а не через точку. Почему так?
Как вывести число с плавающей точки именно с точкой?
Так же не пойму, как число с плавающей точкой вывести только, то что после точки? К примеру 1234.567 вывести 567
  • Вопрос задан
  • 5331 просмотр
Решения вопроса 1
maxclax
@maxclax Автор вопроса
Нашел лучшее решение без различных фильтров и лишнего кода: USE_L10N
Читайте здесь djbook.ru/rel1.7/topics/i18n/formatting.html
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Фильтр можно использовать.
https://docs.djangoproject.com/en/1.7/howto/custom...
from django.template.defaultfilters import floatformat
from django.template import Library

register = Library()


def formatted_float(value):
    value = floatformat(value, arg=4)
    return str(value).replace(',', '.')


register.filter('formatted_float', formatted_float)
Ответ написан
MAKAPOH
@MAKAPOH
многостаночник
Вероятно это связано с интернационализацией, в русском целая и дробная часть отделяются запятой, в английском точкой. Попробуйте переключить язык.
Для манипуляции с выводом напишите свой фильтр если нет готового.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы