Class: ActiveModel::Validations::EmailValidator
- Inherits:
-
EachValidator
- Object
- EachValidator
- ActiveModel::Validations::EmailValidator
- Defined in:
- lib/validates_as_email.rb
Instance Method Summary collapse
-
#initialize(options) ⇒ EmailValidator
constructor
A new instance of EmailValidator.
- #validate_each(record, attribute, value) ⇒ Object
Constructor Details
#initialize(options) ⇒ EmailValidator
Returns a new instance of EmailValidator.
18 19 20 21 22 23 24 |
# File 'lib/validates_as_email.rb', line 18 def initialize() configuration = { :message => (I18n.translate(:'activerecord.errors.messages.invalid_email', :raise => true) rescue 'is an invalid email address'), :allow_nil => false } super(.reverse_merge(configuration)) end |
Instance Method Details
#validate_each(record, attribute, value) ⇒ Object
26 27 28 29 30 31 32 33 34 35 |
# File 'lib/validates_as_email.rb', line 26 def validate_each(record, attribute, value) return if [:allow_nil] && value.nil? return if [:allow_blank] && value.blank? unless value =~ /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/i record.errors[attribute] << ([:message]) return end end |