我在Mysql中有一个整数字段
t.integer "client_number"
在我的Rails模型中,我有
validates_numericality_of :client_number
如果在client_number字段中输入非数值,则此方法可以正常工作。
但是,如果用户输入的数字太大而无法存储在整数数据库字段中,那么它会通过验证并获得
Mysql2::Error Out of range value for column 'client_number'
我希望能够从验证器中捕获错误以防止数据库异常。
有没有办法在我的应用程序中执行此操作,而不是费力地在所有整数字段上执行以下操作:
validates_numericality_of :client_number, :only_integer=> true , :less_than_or_equal_to => 2147483647 , :greater_than => 0