Я хочу создать метод, который возвращает true или false.
Rails.logger.info is_a_valid_email?(params[:user][:email])
if is_a_valid_email(params[:user][:email]) != true
@user.errors.add :email, 'address is not valid.'
end
protected
def is_a_valid_email? (Электронная почта)
email_regex = %r{
^ # Start of string
[0-9a-z] # First character
[0-9a-z.+]+ # Middle characters
[0-9a-z] # Last character
@ # Separating @ character
[0-9a-z] # Domain name begin
[0-9a-z.-]+ # Domain name middle
[0-9a-z] # Domain name end
$ # End of string
}xi # Case insensitive
!( email =~ email_regex )
end
По причинам, связанным с приложением, я должен иметь возможность проверки в контроллере, а не в модели. Выше не работает надежно. Я хочу, чтобы функция is_a_valid_email возвращала значение true или false, что позволило бы мне применить сообщение об ошибке, если false.
Предложения? thxs