Merge pull request #177 from hmsimple/fix-id-methods

use _ids method instead of pluck to embed ids
This commit is contained in:
Steve Klabnik 2012-12-21 14:46:17 -08:00
commit b5b392395a

View File

@ -109,8 +109,10 @@ module ActiveModel
def serialize_ids def serialize_ids
# Use pluck or select_columns if available # Use pluck or select_columns if available
# return collection.ids if collection.respond_to?(:ids) # return collection.ids if collection.respond_to?(:ids)
if !option(:include) && associated_object.respond_to?(:pluck) ids_key = "#{key.to_s.singularize}_ids"
associated_object.pluck(:id)
if !option(:include) && source_serializer.object.respond_to?(ids_key)
source_serializer.object.send(ids_key)
else else
associated_object.map do |item| associated_object.map do |item|
item.read_attribute_for_serialization(:id) item.read_attribute_for_serialization(:id)