Module: AdvancedErrorsRails::FullMessages

Defined in:
lib/advanced_errors_rails/full_messages.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



15
16
17
18
19
20
# File 'lib/advanced_errors_rails/full_messages.rb', line 15

def self.included(base)
  base.class_eval do
    alias_method :full_messages_without_ignore_attribute, :full_messages
    alias_method :full_messages, :full_messages_with_ignore_attribute
  end
end

Instance Method Details

#full_messages_with_ignore_attributeObject



3
4
5
6
7
8
9
10
11
12
13
# File 'lib/advanced_errors_rails/full_messages.rb', line 3

def full_messages_with_ignore_attribute
  error = ActiveModel::Errors.new @base
  self.each do |attribute, message|
    unless message.match(/^\^/)
      error.add attribute, message
    else
      error.add :base, message[1..message.length] #Adding to base will mean that the attribute will not be displayed
    end
  end
  error.full_messages_without_ignore_attribute
end