Module: MongoidEmbeddedErrorsMessages

Defined in:
lib/mongoid-embedded-errors-messages.rb,
lib/mongoid-embedded-errors-messages/version.rb

Defined Under Namespace

Classes: NotMongoidDocument

Constant Summary collapse

VERSION =
"2.0.1"

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(klass) ⇒ Object

Raises:



4
5
6
# File 'lib/mongoid-embedded-errors-messages.rb', line 4

def self.included(klass)
  raise NotMongoidDocument unless klass.included_modules.include? Mongoid::Document
end

Instance Method Details

#embedded_errors_messagesObject



8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/mongoid-embedded-errors-messages.rb', line 8

def embedded_errors_messages
  merged_errors = errors.messages
  embedded_relations.each do |relation, |
    if [:relation] == Mongoid::Relations::Embedded::Many
      errors = embedded_errors_for_embeds_many_relation(relation)
      merged_errors.merge!(errors) if errors.present?
    elsif [:relation] == Mongoid::Relations::Embedded::One
      errors = embedded_errors_for_embeds_one_relation(relation)
      merged_errors.merge!(errors) if errors.present?
    end
  end
  merged_errors.present? ? merged_errors : nil
end