gpt4 book ai didi

ruby-on-rails - Ruby/Rails - 将整数转换为不包括现有零的 float

转载 作者:太空宇宙 更新时间:2023-11-03 18:07:45 24 4
gpt4 key购买 nike

必须有一种简单的方法来实现这一点,我有一个包含整数的数据库字段,我想将其重新格式化为 float 以显示。

作为一个整数,我的值看起来像 6500,我希望它显示为 65.00

在我的模型中,我试图通过创建以下方法来实现这一点

def get_payment_amount_as_number
amount = self.payment_amount
return '%.02f' % self.payment_amount.to_f
end

这会导致显示以下内容:6500.00

最好的方法是去除初始零还是简单地插入小数点?

虽然我认为这是一个与 ruby​​ 相关的问题,但我不确定 Rails 是否已经有一个方便的助手?

谢谢。

最佳答案

你可以将这个数字除以 100:

payment_amount = 6595

'%.02f' % payment_amount.fdiv(100)
#=> "65.95"

'%.02f' % (payment_amount / 100.0)
#=> "65.95"

或者您可以将数字转换为字符串并插入小数点:

payment_amount.to_s.rjust(3, '0').insert(-3, '.')
#=> "65.95"

Rails 还提供了几个 helpers格式化数字:

number_to_currency(65.95)
#=> "$65.95"

number_to_currency(1000)
#=> "$1,000.00"

你可能想看看 money-rails gem 提供从美分到 money 的映射对象。

关于ruby-on-rails - Ruby/Rails - 将整数转换为不包括现有零的 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41040036/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com