Rails:如何以百分比形式显示小数? [英] Rails: How to print a decimal as a percent?
问题描述
是否有一种方法可以将百分数打印成小数,因此句点之后仅两位数字?
Is there a way to print a decimal as a percentage, so only the two digits after the period?
我的小数位始终在1到0之间,因此我认为调用 number.round(2)
从第三个字符开始,但是我在任何地方都找不到该语法。
My decimals will always be between 1 and 0, so I suppose it would work to call number.round(2)
starting with the third character, but I can't find the syntax for that anywhere.
为澄清起见,我希望将数字存储为全十进制,但打印为百分比。
To clarify, I want the number to be stored as a full decimal, but printed as a percentage.
推荐答案
您可能想使用 number_to_percentage
方法。从文档,下面是一些使用方法的示例:
You are probably going to want to use the number_to_percentage
method. From the documentation, here are some examples of how to use it:
number_to_percentage(100) # => 100.000%
number_to_percentage("98") # => 98.000%
number_to_percentage(100, precision: 0) # => 100%
number_to_percentage(1000, delimiter: '.', separator: ',') # => 1.000,000%
number_to_percentage(302.24398923423, precision: 5) # => 302.24399%
number_to_percentage(1000, locale: :fr) # => 1 000,000%
number_to_percentage("98a") # => 98a%
number_to_percentage(100, format: "%n %") # => 100 %
选项:
:locale - Sets the locale to be used for formatting (defaults to current locale).
:precision - Sets the precision of the number (defaults to 3).
:significant - If true, precision will be the # of significant_digits. If false, the # of fractional digits (defaults to false).
:separator - Sets the separator between the fractional and integer digits (defaults to ".").
:delimiter - Sets the thousands delimiter (defaults to "").
:strip_insignificant_zeros - If true removes insignificant zeros after the decimal separator (defaults to false).
:format - Specifies the format of the percentage string The number field is %n (defaults to "%n%").
或者您可以编写如下的红宝石:
Or you can write some ruby like the following:
class Numeric
def percent_of(n)
self.to_f / n.to_f * 100.0
end
end
p (1).percent_of(10) # => 10.0 (%)
p (200).percent_of(100) # => 200.0 (%)
p (0.5).percent_of(20) # => 2.5 (%)
这篇关于Rails:如何以百分比形式显示小数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!