Class: ActiveResource::Errors
- Inherits:
-
ActiveModel::Errors
- Object
- ActiveModel::Errors
- ActiveResource::Errors
- Defined in:
- lib/active_resource/validations.rb
Overview
Active Resource validation is reported to and from this object, which is used by Base#save to determine whether the object in a valid state to be saved. See usage example in Validations.
Instance Method Summary collapse
-
#from_array(messages, save_cache = false) ⇒ Object
Grabs errors from an array of messages (like ActiveRecord::Validations).
-
#from_json(json, save_cache = false) ⇒ Object
Grabs errors from a json response.
-
#from_xml(xml, save_cache = false) ⇒ Object
Grabs errors from an XML response.
Instance Method Details
#from_array(messages, save_cache = false) ⇒ Object
Grabs errors from an array of messages (like ActiveRecord::Validations). The second parameter directs the errors cache to be cleared (default) or not (by passing true).
14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/active_resource/validations.rb', line 14 def from_array(, save_cache = false) clear unless save_cache humanized_attributes = Hash[@base.attributes.keys.map { |attr_name| [attr_name.humanize, attr_name] }] .each do || = humanized_attributes.keys.detect do |attr_name| if [0, attr_name.size + 1] == "#{attr_name} " add humanized_attributes[attr_name], [(attr_name.size + 1)..-1] end end self[:base] << if .nil? end end |
#from_json(json, save_cache = false) ⇒ Object
Grabs errors from a json response.
29 30 31 32 |
# File 'lib/active_resource/validations.rb', line 29 def from_json(json, save_cache = false) array = Array.wrap(ActiveSupport::JSON.decode(json)['errors']) rescue [] from_array array, save_cache end |
#from_xml(xml, save_cache = false) ⇒ Object
Grabs errors from an XML response.
35 36 37 38 |
# File 'lib/active_resource/validations.rb', line 35 def from_xml(xml, save_cache = false) array = Array.wrap(Hash.from_xml(xml)['errors']['error']) rescue [] from_array array, save_cache end |