是否有一个宝石可以缩短像Twitter这样的追随者?

时间:2015-05-21 00:05:44

标签: ruby-on-rails gem numbers

例如:

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

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

1 个答案:

答案 0 :(得分:3)

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"