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
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_messages ⇒ Object
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, metadata|
if metadata[:relation] == Mongoid::Relations::Embedded::Many
errors = embedded_errors_for_embeds_many_relation(relation)
merged_errors.merge!(errors) if errors.present?
elsif metadata[: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
|