From f9849070acb4c7df0b60c61cea3a927191851e92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Valim?= Date: Tue, 3 May 2011 16:51:08 +0200 Subject: Add a shared entry point for AV and AC render which can be used as extension in the future. --- actionpack/lib/abstract_controller/rendering.rb | 6 +----- actionpack/lib/action_view/helpers/rendering_helper.rb | 4 +--- actionpack/lib/action_view/renderer/renderer.rb | 9 +++++++++ 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/actionpack/lib/abstract_controller/rendering.rb b/actionpack/lib/abstract_controller/rendering.rb index db6ff41f55..7f1a790ecc 100644 --- a/actionpack/lib/abstract_controller/rendering.rb +++ b/actionpack/lib/abstract_controller/rendering.rb @@ -132,11 +132,7 @@ module AbstractController # Find and renders a template based on the options given. # :api: private def _render_template(options) #:nodoc: - if options.key?(:partial) - view_renderer.render_partial(view_context, options) - else - view_renderer.render_template(view_context, options) - end + view_renderer.render(view_context, options) end # The prefixes used in render "foo" shortcuts. diff --git a/actionpack/lib/action_view/helpers/rendering_helper.rb b/actionpack/lib/action_view/helpers/rendering_helper.rb index c91e03b7e8..47efdded42 100644 --- a/actionpack/lib/action_view/helpers/rendering_helper.rb +++ b/actionpack/lib/action_view/helpers/rendering_helper.rb @@ -20,10 +20,8 @@ module ActionView when Hash if block_given? view_renderer.render_partial(self, options.merge(:partial => options[:layout]), &block) - elsif options.key?(:partial) - view_renderer.render_partial(self, options) else - view_renderer.render_template(self, options) + view_renderer.render(self, options) end else view_renderer.render_partial(self, :partial => options, :locals => locals) diff --git a/actionpack/lib/action_view/renderer/renderer.rb b/actionpack/lib/action_view/renderer/renderer.rb index 3c0126f6bb..1fa51d276f 100644 --- a/actionpack/lib/action_view/renderer/renderer.rb +++ b/actionpack/lib/action_view/renderer/renderer.rb @@ -10,6 +10,15 @@ module ActionView @controller = controller end + # Main render entry point shared by AV and AC. + def render(context, options) + if options.key?(:partial) + render_partial(context, options) + else + render_template(context, options) + end + end + # Render but returns a valid Rack body. If fibers are defined, we return # a streaming body that renders the template piece by piece. # -- cgit v1.2.3