我正在尝试将字符串1009
转换为$10.09
。我一直在查看NumberHelpers的文档大约15分钟,有点惊讶我没有找到任何可以在字符串或整数的最后两个位置之前添加小数点分隔符.
的方法。 / p>
起初,我试过了:
number_to_currency("1009", :unit => "$")
# => $1,009.00
然后我尝试使用:
number_to_currency("1009", :unit => "$", :precision => 0)
# => $1,009
仅删除小数位后的数字,但不会移位小数位。同样,添加-2
作为精度参数会抛出ArgumentError
。
我知道这可以用几行JavaScript做,但我正在寻找更纯粹的Rails方法,如果有的话。
有人能怎样做到这一点?
答案 0 :(得分:0)
您可以将数字除以100.它很简单且有效。我猜你是把美分兑换成美元,我不认为还有别的办法。
number_to_currency("1009".to_f / 100, :unit => "$")
你也可以为此写一个帮手,比如......
def cents_to_usd(amount)
number_to_currency(amount.to_f / 100, :unit => "$")
end
所以你的观点看起来更好。