Validate email address properly

This commit is contained in:
2020-12-03 14:49:37 +01:00
parent e44535daee
commit 2a2b0a90dc
2 changed files with 19 additions and 1 deletions

View File

@@ -0,0 +1,15 @@
require 'mail'
module EmailValidatable
extend ActiveSupport::Concern
class EmailValidator < ActiveModel::EachValidator
def validate_each(record, attribute, value)
begin
a = Mail::Address.new(value)
rescue Mail::Field::ParseError
record.errors[attribute] << (options[:message] || "is not a valid address")
end
end
end
end