美文网首页
2018-07-17

2018-07-17

作者: 护念 | 来源:发表于2018-07-17 21:02 被阅读0次

单个属性分类验证

个人理解:对于大规模,大量重复使用的字段,我们可以将这些字段的验证抽出,单独成类使用,如下:

# 单个字段类
class EmailValidator < ActiveModel::EachValidator
   # 这里定义 validate_each 方法
  def validate_each(record,attr,value)
    unless value =~ /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\z/i
      record.errors[attr] << '邮箱格式不正确'
    end 
  end
end
class User < ApplicationRecord
  validates :email, email: true
 # 调用方式 字段: true 即可打开
end

PS: 它和单个类验证是对应的

相关文章

网友评论

      本文标题:2018-07-17

      本文链接:https://www.haomeiwen.com/subject/pvogpftx.html