Я не понимаю, почему следующее не работает в Rails 3. Я получаю ошибку «неопределенная локальная переменная или метод« custom_message »».
validates :to_email, :email_format => { :message => custom_message }
def custom_message
self.to_name + "'s email is not valid"
end
Я также попытался использовать: message =>: custom_message вместо того, что было предложено в rails-validation-message-error пост безуспешно.
: email_format - это пользовательский валидатор, расположенный в папке lib:
class EmailFormatValidator < ActiveModel::EachValidator
def validate_each(object, attribute, value)
unless value =~ /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i
object.errors[attribute] << (options[:message] || 'is not valid')
end
end
end