mirror of
https://github.com/ditkrg/active_model_serializers.git
synced 2026-01-23 06:16:50 +00:00
Minor cleanup.
This commit is contained in:
parent
3804dcc238
commit
8ac2b9b01f
@ -102,9 +102,8 @@ module ActiveModel
|
|||||||
end
|
end
|
||||||
|
|
||||||
def serializable_hash_for_single_resource
|
def serializable_hash_for_single_resource
|
||||||
primary_data = primary_data_for(serializer)
|
primary_data = resource_object_for(serializer)
|
||||||
relationships = relationships_for(serializer)
|
|
||||||
primary_data[:relationships] = relationships if relationships.any?
|
|
||||||
hash = { data: primary_data }
|
hash = { data: primary_data }
|
||||||
|
|
||||||
included = included_resources(@include_tree, [primary_data])
|
included = included_resources(@include_tree, [primary_data])
|
||||||
@ -142,26 +141,22 @@ module ActiveModel
|
|||||||
end
|
end
|
||||||
|
|
||||||
def resource_object_for(serializer)
|
def resource_object_for(serializer)
|
||||||
cache_check(serializer) do
|
resource_object = cache_check(serializer) do
|
||||||
resource_object = resource_identifier_for(serializer)
|
resource_object = resource_identifier_for(serializer)
|
||||||
|
|
||||||
requested_fields = fieldset && fieldset.fields_for(resource_object[:type])
|
requested_fields = fieldset && fieldset.fields_for(resource_object[:type])
|
||||||
attributes = attributes_for(serializer, requested_fields)
|
attributes = attributes_for(serializer, requested_fields)
|
||||||
resource_object[:attributes] = attributes if attributes.any?
|
resource_object[:attributes] = attributes if attributes.any?
|
||||||
|
|
||||||
links = links_for(serializer)
|
|
||||||
resource_object[:links] = links if links.any?
|
|
||||||
|
|
||||||
resource_object
|
resource_object
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
def primary_data_for(serializer)
|
relationships = relationships_for(serializer)
|
||||||
if serializer.respond_to?(:each)
|
resource_object[:relationships] = relationships if relationships.any?
|
||||||
serializer.map { |s| resource_object_for(s) }
|
|
||||||
else
|
links = links_for(serializer)
|
||||||
resource_object_for(serializer)
|
resource_object[:links] = links if links.any?
|
||||||
end
|
|
||||||
|
resource_object
|
||||||
end
|
end
|
||||||
|
|
||||||
def relationship_value_for(serializer, options = {})
|
def relationship_value_for(serializer, options = {})
|
||||||
@ -201,9 +196,7 @@ module ActiveModel
|
|||||||
else
|
else
|
||||||
return unless serializer && serializer.object
|
return unless serializer && serializer.object
|
||||||
|
|
||||||
resource_object = primary_data_for(serializer)
|
resource_object = resource_object_for(serializer)
|
||||||
relationships = relationships_for(serializer)
|
|
||||||
resource_object[:relationships] = relationships if relationships.any?
|
|
||||||
|
|
||||||
return if included.include?(resource_object) || primary_data.include?(resource_object)
|
return if included.include?(resource_object) || primary_data.include?(resource_object)
|
||||||
included.push(resource_object)
|
included.push(resource_object)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user