Method: ATDIS::Model#json_errors_in_children

Defined in:
lib/atdis/model.rb

#json_errors_in_childrenObject



127
128
129
130
131
132
133
134
135
136
137
138
139
# File 'lib/atdis/model.rb', line 127

def json_errors_in_children
  r = []
  attributes.each do |attribute_as_string, value|
    attribute = attribute_as_string.to_sym
    if value.respond_to?(:json_errors)
      r += value.json_errors.map { |a, b| [{ attribute => a }, b] }
    elsif value.is_a?(Array)
      f = value.find { |v| v.respond_to?(:json_errors) && !v.json_errors.empty? }
      r += f.json_errors.map { |a, b| [{ attribute => [a] }, b] } if f
    end
  end
  r
end