Точность Rails number_to_currency не работает - это ошибка? - PullRequest
3 голосов
/ 19 июля 2011

Я пытаюсь использовать number_to_currency, чтобы получить две цифры после десятичной точки в Rails 3, но я могу получить только одну. Поле моей БД определяется так:

t.decimal  "amount",              :precision => 5, :scale => 2

В моем шаблоне у меня есть:

#{number_to_currency(@purch.amount)}

И все же в результате я получаю: PLN 34,7
В БД я четко вижу: 34.70
Я хотел бы видеть свой второй ноль - это функция или я что-то упустил?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 21 июля 2011

Ответ - проверить следующую настройку в файле конфигурации локали:

  currency:
      format:
        strip_insignificant_zeros: false
2 голосов
/ 19 июля 2011

Поскольку вы, похоже, используете пользовательский языковой стандарт, попробуйте принудительно настроить желаемое поведение, явно задав параметры number_to_currency:

number_to_currency(@purch.amount, :precision => 2)

Вы также можете установить эти параметры в файле языкового стандарта для своего языка.Взгляните на http://guides.rubyonrails.org/i18n.html

...