Ruby on rails Rails中的可读价格
我正在寻找这样的函数来响应价格:Ruby on rails Rails中的可读价格,ruby-on-rails,Ruby On Rails,我正在寻找这样的函数来响应价格: 17.0 #=> 17 17.5 #=> 17.50 number-to-u-currency以非常熟悉的方式工作,但如果没有美分,仍然会回显$17.00(如果您仍然想使用number-to-u-currency,那么您可以获得想要的工作的一种方法是: number_to_currency(17.0).chomp(".00") => "$17" number_to_currency(17.5).chomp(".00") => "$17.
17.0 #=> 17
17.5 #=> 17.50
number-to-u-currency
以非常熟悉的方式工作,但如果没有美分,仍然会回显$17.00
(如果您仍然想使用number-to-u-currency
,那么您可以获得想要的工作的一种方法是:
number_to_currency(17.0).chomp(".00") => "$17"
number_to_currency(17.5).chomp(".00") => "$17.50"
这样,如果有“.00”,它就会去掉结尾
chomp(*args)
:“返回一个新字符串,其中给定的记录分隔符已从str的末尾移除(如果存在)。”您将要查找的字符串,如下所示:
number_to_currency("17.00", strip_insignificant_zeros: false) #-> $17.00
number_to_currency("17.00", strip_insignificant_zeros: true) #-> $17
请尝试使用
to_i
。因此,为了澄清,您始终希望将美分显示为两位数,除非它正好是0美分,对吗?@rorofromrance!没错!:)@Pavan抱歉,我已修复了格式,它们已经是整数了。如果它们已经是整数了,就没有0.5可担心了……这不是number\u to\u currency
的选项。这是针对number\u-to\u-human
和number\u-to\u-percentage
。。。这真的有效吗?另外,我相信询问者会希望将其设置为真,而不是假-他们不希望17.00美元的.00。是的,它可以工作-我刚刚在我们正在开发的一个应用程序中进行了测试!我认为它是有效的,因为number\u to\u currency
调用了另一个确实支持该参数的方法。我将更改我的答案以反映正确的值谢谢!但是在17.5
上,它给出的是相同的17.5
,而不是17.50
您使用的是刻度/精度参数吗?谢谢提醒-我马上再试!这对Gediminas有帮助吗?