Class: JSONApi::RelationshipSerializer::ToManySerializer
- Inherits:
-
JSONApi::RelationshipSerializer
- Object
- JSONApi::RelationshipSerializer
- JSONApi::RelationshipSerializer::ToManySerializer
- Defined in:
- lib/json_api/relationship_serializer.rb
Instance Method Summary collapse
- #data_for(object, options) ⇒ Object
- #key_for(**options) ⇒ Object
- #links_for(object, options) ⇒ Object
Methods inherited from JSONApi::RelationshipSerializer
Instance Method Details
#data_for(object, options) ⇒ Object
61 62 63 64 65 66 67 |
# File 'lib/json_api/relationship_serializer.rb', line 61 def data_for(object, ) return if [:data] != true ids = relationship_for(object, ) ids.map { |id| resource_identifier_for(type_for(object, ), id) } .compact end |
#key_for(**options) ⇒ Object
57 58 59 |
# File 'lib/json_api/relationship_serializer.rb', line 57 def key_for(**) "#{super}_ids" end |
#links_for(object, options) ⇒ Object
69 70 71 72 73 74 75 76 |
# File 'lib/json_api/relationship_serializer.rb', line 69 def links_for(object, ) return if [:links] == false id = Utils.canonicalize_id(object.send([:id_attribute] || :id)) type = Utils.canonicalize_attribute_name([:name]) { related: "#{options[:base_url] || ""}/#{options[:parent_type]}/#{id}/#{type}" } end |