0
Люди платят процентную плату в зависимости от того, насколько они благотворительны.Метод активной модели не вернет BigDecimal
class Human < ActiveRecord::Base
def fee
if charitable
fee = BigDecimal('0.2')
else
fee = BigDecimal('0.5')
end
fee
end
end
Но почему это, что, когда я запускаю это на консоли плату Боба, я получаю Fixnum
:
> bob.charitable
=> false # Ahh, so he should pay a fifty percent fee
> bob.fee
=> 0 # Whaaat? The dastardly bob has somehow [email protected] the system
> bob.fee.class
=> Fixnum # What? This was supposed to be a BigDecimal
Черт вас Боб.
Помогите мне победить Боба.