diff --git a/lib/active_model/serializable/utils.rb b/lib/active_model/serializable/utils.rb index 7471bd0f..efabb6c4 100644 --- a/lib/active_model/serializable/utils.rb +++ b/lib/active_model/serializable/utils.rb @@ -4,8 +4,12 @@ module ActiveModel extend self def _const_get(const) - method = RUBY_VERSION >= '2.0' ? :const_get : :qualified_const_get - Object.send method, const + begin + method = RUBY_VERSION >= '2.0' ? :const_get : :qualified_const_get + Object.send method, const + rescue NameError + const.safe_constantize + end end end end diff --git a/lib/active_model/serializer.rb b/lib/active_model/serializer.rb index 689e132a..dd82e976 100644 --- a/lib/active_model/serializer.rb +++ b/lib/active_model/serializer.rb @@ -63,11 +63,7 @@ end ArraySerializer end else - begin - _const_get build_serializer_class(resource, options) - rescue NameError - nil - end + _const_get build_serializer_class(resource, options) end end