我正在使用 RubyMoney/money-rails gem,我对它非常满意。

现在我需要为货币列增加更多的精度,所以我定义了一个新的货币

:subunit             => "Subcent",
:subunit_to_unit     => 10000,

有没有办法使用格式助手 humanized_money_with_symbol 但逗号后只显示 2 位数字?

例子:
10,0044 欧元(货币小数:100044 货币:欧元)
应该显示为
10,00 欧元

最佳答案

一个小技巧是注销所有货币并像这样使用新的 subunit_to_unit 重新注册它们

currencies = Money::Currency.table.dup

currencies.each do |code, currency|
  Money::Currency.unregister(currency)
end

currencies.each do |code, currency|
  Money::Currency.register(currency.merge({subunit_to_unit: 1000}))
end

如果您使用 Rails,请尝试在初始化程序中声明上述代码。

关于ruby-on-rails - rails-money gem : Money formatting with 2 cent digits, 但存储 4 美分数字,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16130225/

10-13 05:45