使用rails将便士转换为货币

时间:2015-09-06 18:07:11

标签: ruby-on-rails number-to-currency

我正在使用Stripe并获得便士货币。因此12.90看起来像1290.我想将其转换为美国货币,但如果我尝试使用number_to_currency方法,它最终看起来像1,290.00。有没有一种方法可以将完整的字符串转换为货币,以便在12.90时正确显示?

我目前的代码是:

<h4>Total Payment Due: <%= number_to_currency(@user.total_cost)%>

2 个答案:

答案 0 :(得分:2)

你应该能够除以100,但要确保它是一个浮点数,即。使用100.0来防止舍入到12.00。

<h4>Total Payment Due: <%= number_to_currency(@user.total_cost/100.0)%>

显示$12.90

答案 1 :(得分:1)

你也可以使用金钱宝石:https://github.com/RubyMoney/money

Money.new(100, "USD").format #=> "$1.00"

可能有点矫枉过正,但会做你想做的事。