Module: Hat::Nesting::JsonSerializer
- Includes:
- BaseJsonSerializer
- Defined in:
- lib/hat/nesting/json_serializer.rb
Instance Attribute Summary
Attributes included from BaseJsonSerializer
#relation_includes, #result, #serializable
Instance Method Summary collapse
Methods included from BaseJsonSerializer
#attribute_hash, #attributes, #has_manys, #has_ones, #includable, #includes, #initialize, #meta, #to_json
Instance Method Details
#as_json(*args) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/hat/nesting/json_serializer.rb', line 13 def as_json(*args) result[root_key] = Array(serializable).map do |serializable_item| serializer = self.class.new(serializable_item, { result: {} }) serializer.includes(*relation_includes).serialize end result.merge({ meta: .merge() }) end |
#serialize ⇒ Object
23 24 25 26 |
# File 'lib/hat/nesting/json_serializer.rb', line 23 def serialize assert_id_present(serializable) attribute_hash.merge(relation_loader.relation_hash) end |