Module: Nexx::AdvancedErrors::FullMessages

Defined in:
lib/advanced_errors.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



16
17
18
19
# File 'lib/advanced_errors.rb', line 16

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

Instance Method Details

#full_messages_with_ignore_attributeObject



4
5
6
7
8
9
10
11
12
13
14
# File 'lib/advanced_errors.rb', line 4

def full_messages_with_ignore_attribute
  error = ActiveRecord::Errors.new @base
  self.each do |attribute, message|
    unless message.match(/^\^/)
      error.add attribute, message
    else
      error.add_to_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