Exclude links without any data

This commit is contained in:
Michael Witrant 2016-04-07 19:07:59 +02:00
parent a1826186e5
commit 87bffef945
3 changed files with 4 additions and 1 deletions

View File

@ -464,7 +464,8 @@ module ActiveModelSerializers
# }.reject! {|_,v| v.nil? } # }.reject! {|_,v| v.nil? }
def links_for(serializer) def links_for(serializer)
serializer._links.each_with_object({}) do |(name, value), hash| serializer._links.each_with_object({}) do |(name, value), hash|
hash[name] = Link.new(serializer, value).as_json result = Link.new(serializer, value).as_json
hash[name] = result if result
end end
end end

View File

@ -71,6 +71,7 @@ module ActiveModelSerializers
hash[:href] = @href if defined?(@href) hash[:href] = @href if defined?(@href)
hash[:meta] = @meta if defined?(@meta) hash[:meta] = @meta if defined?(@meta)
return nil if hash.empty?
hash hash
end end

View File

@ -17,6 +17,7 @@ module ActiveModelSerializers
link :yet_another do link :yet_another do
"http://example.com/resource/#{object.id}" "http://example.com/resource/#{object.id}"
end end
link(:nil) { nil }
end end
def setup def setup