diff --git a/lib/active_model/serializer/adapter.rb b/lib/active_model/serializer/adapter.rb index 7c061434..0b8118d6 100644 --- a/lib/active_model/serializer/adapter.rb +++ b/lib/active_model/serializer/adapter.rb @@ -22,7 +22,7 @@ module ActiveModel def as_json(options = nil) hash = serializable_hash(options) - include_meta(hash) unless self.class == FlattenJson + include_meta(hash) hash end diff --git a/lib/active_model/serializer/adapter/flatten_json.rb b/lib/active_model/serializer/adapter/flatten_json.rb index 87b3ea8c..7ed57034 100644 --- a/lib/active_model/serializer/adapter/flatten_json.rb +++ b/lib/active_model/serializer/adapter/flatten_json.rb @@ -6,6 +6,13 @@ module ActiveModel super @result end + + private + + # no-op: FlattenJson adapter does not include meta data, because it does not support root. + def include_meta(json) + json + end end end end