ruby - 用一位小数显示 float 中的两位小数

标签 ruby

我在数据库中有钱存储为 cents通过整数类型。显示时:我将其转换为 float ,因为我想以美元金额显示金额。我总是想用两位数字显示数字:

例如:

5000 => 50.00
500  => 5.00
50   => 0.50
5    => 0.05
0    => 0.00

最难的是获得 50转换为 0.50因为它是一个 float ,所以它想转换为 0.5 .

目前行不通的方法:

def cents_to_currency_string
  return if cents.nil?
  (cents.to_f / 100)
end

最佳答案

利用您自己的实现:

def cents_to_currency_string(cents)
  return if cents.nil?
  dollars = cents.to_f/100
  '%.2f' % dollars
end

关于ruby - 用一位小数显示 float 中的两位小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40428949/

相关文章:

ruby - 检查 C 编译器是否工作...不

ruby - 如何从这个字符串中提取电子邮件地址?

ruby-on-rails - 以不同方式访问时,得到相同模型的不同版本

ruby-on-rails - 如何处理 Grape 中特定操作的过滤器之前?

ruby - ruby 的扩展语法是如何工作的?

ruby-on-rails - 密码更改后通过 Devise 自动登录

Ruby 模块可以访问它所需要的类方法吗?

ruby - 无方法错误 : undefined method `start_with?'

当太多作业待处理时,Ruby、DelayedJob 会变慢

ruby-on-rails - 如何更改 Rails 3 Controller 中 View 文件的默认路径?