我有一个变量我想强制有2个,总是2个小数。我和一种货币比较。通常我会得到如下的比较。
if self.price != price
#do something
end
self.price = 120.00
和price = 120.0
的位置。 self.price
在模型中设置为:precision => 2
,但我如何对变量执行相同的操作,因为这似乎在比较中失败
答案 0 :(得分:3)
使用整数来存储货币,例如,使用商店100美分兑换1美元。它可以减轻头痛,如果重要的话可以提高性能。
答案 1 :(得分:1)
class Numeric
def round_to( decimals=0 )
factor = 10.0**decimals
(self*factor).round / factor
end
end
if self.price.round_to(2) != price.round_to(2)
#do something
end