Class: JSONApi::ParamsDeserializer
- Inherits:
-
Object
- Object
- JSONApi::ParamsDeserializer
- Defined in:
- lib/json_api/params_deserializer.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.deserialize(data, **options) ⇒ Object
3 4 5 |
# File 'lib/json_api/params_deserializer.rb', line 3 def self.deserialize(data, **) self.new.deserialize(data, **) end |
Instance Method Details
#deserialize(data, **options) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/json_api/params_deserializer.rb', line 7 def deserialize(data, **) type = sanitize_type_name(data.fetch('type')) attributes = sanitize_hash(data.fetch('attributes', {})) relationships = data.fetch('relationships', {}) attributes['id'] = data['id'] unless data['id'].nil? deserialize_relationships(relationships, attributes) if [:root] == false attributes else { type => attributes } end end |