例如:


410589实际上显示为410K
4509实际上显示为4K
349实际上显示为349


我正在寻找一种将非常大的数字缩短为易于阅读的格式的方法。

最佳答案

number_to_human非常接近您的要求。它会四舍五入,因此410589将变为“ 411 K”,不确定是否可以。

您将需要一些I18n映射,或者提供单位散列来获取后缀,并且需要进行一些调整以获得所需的精度,但是例如:

opts = { units: { thousand: "K" }, precision: 0, significant: false }

number_to_human 410589, opts  # => "411 K"
number_to_human 4509, opts    # => "5 K"
number_to_human 349, opts     # => "349"

关于ruby-on-rails - 有没有像Twitter那样可以缩短追随者数量的 gem ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30362386/

10-11 17:41