美文网首页
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