Fix default_serializer_options, closes #112 & #113

Allow options such as :serializer, :scope, :root etc to be set via
default_serializer_options and allow the inline options to override such
defaults.
This commit is contained in:
Godfrey Chan
2012-08-14 04:44:34 -07:00
parent e79fe399a5
commit 6581f8ce41
2 changed files with 59 additions and 4 deletions

View File

@@ -40,6 +40,8 @@ module ActionController
end
def _render_option_json(json, options)
options = default_serializer_options.merge(options) if default_serializer_options
serializer = options.delete(:serializer) ||
(json.respond_to?(:active_model_serializer) && json.active_model_serializer)
@@ -59,7 +61,7 @@ module ActionController
if serializer
options[:scope] = serialization_scope unless options.has_key?(:scope)
options[:url_options] = url_options
json = serializer.new(json, options.merge(default_serializer_options || {}))
json = serializer.new(json, options)
end
super
end