Merge pull request #1294 from beauby/fix-serializer-lookup-non-ams

Only use subclasses of ActiveModel::Serializer during lookup.
This commit is contained in:
L. Preston Sego III
2015-10-25 23:01:00 -04:00
2 changed files with 10 additions and 1 deletions

View File

@@ -202,7 +202,7 @@ module ActiveModel
def self.get_serializer_for(klass)
serializers_cache.fetch_or_store(klass) do
# NOTE(beauby): When we drop 1.9.3 support we can lazify the map for perfs.
serializer_class = serializer_lookup_chain_for(klass).map(&:safe_constantize).find { |x| x }
serializer_class = serializer_lookup_chain_for(klass).map(&:safe_constantize).find { |x| x && x < ActiveModel::Serializer }
if serializer_class
serializer_class