提交 67336ce1 编写于 作者: J José Valim

Remove remaining coupling with AV in MimeResponds

上级 a4166956
......@@ -32,6 +32,8 @@ module Rendering
def render(*args, &block)
options = _normalize_render(*args, &block)
self.response_body = render_to_body(options)
_process_format(rendered_format)
self.response_body
end
# Raw rendering of a template to a string.
......@@ -98,6 +100,11 @@ def _process_options(options)
options
end
# Process the rendered format.
# :api: private
def _process_format(format)
end
# Normalize args and options.
# :api: private
def _normalize_render(*args, &block)
......
......@@ -364,9 +364,7 @@ def retrieve_collector_from_mimes(mimes=nil, &block) #:nodoc:
format = collector.negotiate_format(request)
if format
self.content_type ||= format.to_s
lookup_context.formats = [format.to_sym]
lookup_context.rendered_format = lookup_context.formats.first
_process_format(format)
collector
else
raise ActionController::UnknownFormat
......
......@@ -12,8 +12,6 @@ def process_action(*) #:nodoc:
def render(*args) #:nodoc:
raise ::AbstractController::DoubleRenderError if self.response_body
super
self.content_type ||= rendered_format.to_s
self.response_body
end
# Overwrite render_to_string because body can now be set to a rack body.
......@@ -38,6 +36,11 @@ def render_to_body(options = {})
private
def _process_format(format)
super
self.content_type ||= format.to_s
end
# Normalize arguments by catching blocks and setting them on :update.
def _normalize_args(action=nil, options={}, &blk) #:nodoc:
options = super
......
......@@ -95,6 +95,13 @@ def rendered_format
private
# Assign the rendered format to lookup context.
def _process_format(format) #:nodoc:
super
lookup_context.formats = [format.to_sym]
lookup_context.rendered_format = lookup_context.formats.first
end
# Normalize args by converting render "foo" to render :action => "foo" and
# render "foo/bar" to render :file => "foo/bar".
# :api: private
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册