从number_to_currency中删除十进制

hyp*_*jas 17 ruby ruby-on-rails

我有浮动价格:

number_to_currency(m.price, :locale => 'en_us')
Run Code Online (Sandbox Code Playgroud)

我明白了: $39.00

我怎么能删除.00,我想得到:

$39
Run Code Online (Sandbox Code Playgroud)

Tho*_*emm 34

您可以根据记录的精度设置为0,这里在Rails的API文档.

number_to_currency(m.price, locale: :en, precision: 0)
Run Code Online (Sandbox Code Playgroud)

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

编辑:交换的场所:en_us进行:en,这可能会在更多的应用程序中启用.


cla*_*asz 20

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

number_to_currency(m.price, :locale => 'en_us').gsub(/\.00$/, "")
Run Code Online (Sandbox Code Playgroud)

  • 也许不是操作者想要的东西,但是这帮了我很多-谢谢! (2认同)