Ruby on rails Rails:将十进制从数字\u删除为\u货币
我有一个浮动价格:Ruby on rails Rails:将十进制从数字\u删除为\u货币,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有一个浮动价格: number_to_currency(m.price, :locale => 'en_us') 我得到:$39.00 如何删除.00,我想获得: $39 您可以将精度设置为0,如Rails API文档中所述 number_to_currency(m.price, locale: :en, precision: 0) 请注意,您的价格将四舍五入,从38.50美元到39.49美元的任何价格都将显示为39美元 编辑:将地区:en_us交换为:en,这可能会在更多应用程序
number_to_currency(m.price, :locale => 'en_us')
我得到:$39.00
如何删除.00
,我想获得:
$39
您可以将精度设置为0,如Rails API文档中所述
number_to_currency(m.price, locale: :en, precision: 0)
请注意,您的价格将四舍五入,从38.50美元到39.49美元的任何价格都将显示为39美元
编辑:将地区
:en_us
交换为:en
,这可能会在更多应用程序中启用。假设您只想在0美分的情况下跳过小数,如何
number_to_currency(m.price, :locale => 'en_us').gsub(/\.00$/, "")
如果你只想删除不重要的0,你可以使用这个选项:
number\u to\u currency(amount,strip\u minality\u zero:true)
也许不是op想要的,但这帮了我很多忙——谢谢!我发现当你只想隐藏.00,但如果有可用的话可以保留任何便士时,这真的很有用。我得到“en_us”不是有效的区域设置
尝试区域设置::en
。您的错误消息可能与I18n有关。强制执行可用的\u区域设置number\u到\u货币(此处您的\u编号,单位:,分隔符:,分隔符:,,精度:0)