我有这堂课:
class Project < ActiveRecord::Base
  validates :hourly_rate, :numericality => { :greater_than_or_equal_to => 0 },
                          :allow_blank  => true
  def hourly_rate=(number)
    self.hourly_rate_in_cents = number.present? ? number.to_d * 100 : nil
  end
end
本质上,hourly_rate用户输入的任何新数据都将作为整数保存到数据库中。
这对数字非常有效。
但是任何string正在输入的内容都会自动转换0.0并保存,而无需任何验证消息!
没有办法使用 Rails 的任何验证方法来验证这一点吗?
谢谢你的帮助。