我正在使用rails 3.1。我有一个这样的模型产品:
class Product < ActiveRecord::Base
attr_accessor :output_unit
...
validates_numericality_of :output_unit, greater_than_or_equal_to => 0, :on => update
...
end
当我尝试更新产品并在此字段中引入数字时,表单消息显示“输出单位不是数字”。
非常感谢!
答案 0 :(得分:0)
您可以编写方法output_unit_before_type_cast
并返回self.output_unit
,试试这个:
attr_accessor :output_unit
validates_numericality_of :output_unit, :only_integer => true, greater_than_or_equal_to => 0, :on => update
def output_unit_before_type_cast
self.output_unit
end
或者
attr_accessor :output_unit
validates :output_unit, :numericality => { :only_integer => true, :greater_than_or_equal_to => 0, :on => update }
def output_unit_before_type_cast
self.output_unit
end