aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/new_base
diff options
context:
space:
mode:
authorYehuda Katz + Carl Lerche <ykatz+clerche@engineyard.com>2009-05-22 12:28:40 -0700
committerYehuda Katz + Carl Lerche <ykatz+clerche@engineyard.com>2009-05-22 15:24:31 -0700
commit01129534cde293e3561dd7cc3cb5ae9ac3de9e8c (patch)
treeb652a0d98cff4d8b9f2ef9b6e95fb234b8d54027 /actionpack/lib/action_controller/new_base
parente976c489e6416cdc4714721df78dd43dd6d13d99 (diff)
downloadrails-01129534cde293e3561dd7cc3cb5ae9ac3de9e8c.tar.gz
rails-01129534cde293e3561dd7cc3cb5ae9ac3de9e8c.tar.bz2
rails-01129534cde293e3561dd7cc3cb5ae9ac3de9e8c.zip
Cleaned up the #render_to_body chain by extracting determining the templates to render to a separate hook point.
Diffstat (limited to 'actionpack/lib/action_controller/new_base')
-rw-r--r--actionpack/lib/action_controller/new_base/renderer.rb24
1 files changed, 15 insertions, 9 deletions
diff --git a/actionpack/lib/action_controller/new_base/renderer.rb b/actionpack/lib/action_controller/new_base/renderer.rb
index 59df3c51da..987751a601 100644
--- a/actionpack/lib/action_controller/new_base/renderer.rb
+++ b/actionpack/lib/action_controller/new_base/renderer.rb
@@ -27,6 +27,20 @@ module ActionController
def render_to_body(options)
_process_options(options)
+ if options.key?(:partial)
+ _render_partial(options[:partial], options)
+ end
+
+ super
+ end
+
+ private
+
+ def _prefix
+ controller_path
+ end
+
+ def _determine_template(options)
if options.key?(:text)
options[:_template] = ActionView::TextTemplate.new(options[:text], formats.first)
elsif options.key?(:inline)
@@ -37,21 +51,13 @@ module ActionController
options[:_template_name] = options[:template]
elsif options.key?(:file)
options[:_template_name] = options[:file]
- elsif options.key?(:partial)
- _render_partial(options[:partial], options)
- else
+ elsif !options.key?(:partial)
options[:_template_name] = (options[:action] || action_name).to_s
options[:_prefix] = _prefix
end
super
end
-
- private
-
- def _prefix
- controller_path
- end
def _render_partial(partial, options)
case partial