如何用符号使用money-rails显示价格

时间:2012-11-29 20:23:29

标签: ruby-on-rails currency

鉴于这个简单的Money对象查询

Money.new(1000, "USD").to_s
=> "10.00" 

如何用符号显示值?我知道我可以拨打money_object.symbol,但有些货币会将该符号放在该值之前和之后。我很确定应该有一些简单的方法吗? Haven通过阅读文档找不到它。

2 个答案:

答案 0 :(得分:7)

如果您使用的是money-rails,那么您有很多帮手:

  • currency_symbol帮助方法

    <%= currency_symbol %>
    

这将使用默认货币符号呈现span dom元素。

  • humanized_money帮助方法

    <%= humanized_money @money_object %>
    

这将呈现没有货币符号的格式化货币值,如果它只包含零,则不带分数部分(使用:no_cents_fi_whole标志)。

  • 使用符号助手进行人性化

    <%= humanized_money_with_symbol @money_object %>
    

这将呈现格式化的货币值,包括货币符号,如果它只包含零,则不包含美分部分。

  • 获得没有美分部分的货币价值

    <%= money_without_cents @money_object %>
    

这将呈现没有货币符号且没有美分部分的格式化货币值。

  • 获取没有美分部分的货币价值并包括货币符号

    <%= money_without_cents_and_with_symbol @money_object %>
    

这将呈现格式化的货币值,包括货币符号,而不包含分数部分。

答案 1 :(得分:5)

ActionView::Helpers::NumberHelpernumber_to_currency可以解决这个问题。