多条记录同时保存,怎么区分是对哪条记录的校验? {:name=>["不能为空字符"], :descs=>["不能为空字符"]} 比如想在 name 后面加个 name1 或 descs1 来区分是第一条记录出错了,怎么区分? 怎能自定义校验吗?
大家没有同时保存多条记录校验的情况么???怎么处理的。。
@post.errors 里面的东西是个 hash , 验证不过的会在里面
class Person < ActiveRecord::Base validates :name, :presence => true, :length => { :minimum => 3 } end person = Person.new person.valid? # => false person.errors # => {:name => ["can't be blank", "is too short (minimum is 3 characters)"]}
上面就是对 name 的验证结果。 ·person.errors[:name]· 如果你还有一个字段 email,那么就是 ·person.errors[:email]·
#3 楼 @woaigithub 谢谢,目前是这么处理的 就是没明白为什么 要有person.valid?这句才行
person.valid?
这句是检查 person 是否 valid,如果 valid==true,就不用显示错误信息了,如果是就显示错误信息,并且阻止后面的代码继续执行。