Rails十进制计算带有时髦的输出

时间:2012-10-09 11:29:30

标签: ruby-on-rails-3

我在Rails应用程序中尝试了一些小数计算,但得到了一些奇怪的结果。

@pprice = item.price - (( item.price / 100 ) * promo.discount)

@pprice = item.price - promo.discount

每个值(item.price,promo.discount等)都是小数。但是,在尝试计算时,我得到了混合结果,它们都不是正确的总数。结果范围从nil,0.0和-2.0取决于我是否包含.to_f。

第一次计算是基于百分比折扣,第二次是直接减少资金。

我在视图中执行了计算(测试)并且它们显示正确,但是当它们移动到控制器时,我得到了错误。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

因为你将值转换为浮点数,所以你的计算结果并不准确。 见String, decimal, or float datatype for price field?