从number_to_currency中删除十进制

时间:2012-12-12 11:52:16

标签: ruby-on-rails ruby

我有浮动价格:

number_to_currency(m.price, :locale => 'en_us')

我得到:$39.00

如何删除.00,我想要获取:

$39

2 个答案:

答案 0 :(得分:34)

您可以将精度设置为0,如Rails API文档中记录的here

number_to_currency(m.price, locale: :en, precision: 0)

请注意,您的价格将会四舍五入,从$ 38.50到$ 39.49的任何内容都将显示为$ 39。

修改:en_us的Exchanged区域设置:en,可能会在更多应用中启用。

答案 1 :(得分:19)

假设您只想在0美分的情况下跳过小数,那么

number_to_currency(m.price, :locale => 'en_us').gsub(/\.00$/, "")