From eb327c1bab918c7d9ab723550f767529771d2e19 Mon Sep 17 00:00:00 2001 From: Nick Sutterer Date: Wed, 4 May 2011 00:12:11 +0200 Subject: no @controller dependency in Renderers. --- actionpack/lib/action_view/renderer/abstract_renderer.rb | 3 +-- actionpack/lib/action_view/renderer/partial_renderer.rb | 10 +++------- actionpack/lib/action_view/renderer/renderer.rb | 13 ++++++------- 3 files changed, 10 insertions(+), 16 deletions(-) (limited to 'actionpack/lib/action_view/renderer') diff --git a/actionpack/lib/action_view/renderer/abstract_renderer.rb b/actionpack/lib/action_view/renderer/abstract_renderer.rb index d389105a7a..60c527beeb 100644 --- a/actionpack/lib/action_view/renderer/abstract_renderer.rb +++ b/actionpack/lib/action_view/renderer/abstract_renderer.rb @@ -3,9 +3,8 @@ module ActionView delegate :find_template, :template_exists?, :with_fallbacks, :update_details, :with_layout_format, :formats, :freeze_formats, :to => :@lookup_context - def initialize(lookup_context, controller) + def initialize(lookup_context) @lookup_context = lookup_context - @controller = controller end def render diff --git a/actionpack/lib/action_view/renderer/partial_renderer.rb b/actionpack/lib/action_view/renderer/partial_renderer.rb index 70327b16c4..a351fbc04f 100644 --- a/actionpack/lib/action_view/renderer/partial_renderer.rb +++ b/actionpack/lib/action_view/renderer/partial_renderer.rb @@ -219,7 +219,7 @@ module ActionView def initialize(*) super - @partial_names = PARTIAL_NAMES[@controller.class.name] + @partial_names = PARTIAL_NAMES[@lookup_context.prefixes.first] end def render(context, options, block) @@ -304,10 +304,6 @@ module ActionView self end - def controller_prefixes - @controller_prefixes ||= @controller && @controller._prefixes - end - def collection if @options.key?(:collection) collection = @options[:collection] @@ -331,7 +327,7 @@ module ActionView end def find_template(path=@path, locals=@locals.keys) - prefixes = path.include?(?/) ? [] : controller_prefixes + prefixes = path.include?(?/) ? [] : @lookup_context.prefixes @lookup_context.find_template(path, prefixes, true, locals) end @@ -372,7 +368,7 @@ module ActionView object = object.to_model if object.respond_to?(:to_model) object.class.model_name.partial_path.dup.tap do |partial| - path = controller_prefixes.first + path = @lookup_context.prefixes.first partial.insert(0, "#{File.dirname(path)}/") if partial.include?(?/) && path.include?(?/) end end diff --git a/actionpack/lib/action_view/renderer/renderer.rb b/actionpack/lib/action_view/renderer/renderer.rb index 1fa51d276f..bf1b5a7d22 100644 --- a/actionpack/lib/action_view/renderer/renderer.rb +++ b/actionpack/lib/action_view/renderer/renderer.rb @@ -3,11 +3,10 @@ module ActionView # to other objects like TemplateRenderer and PartialRenderer which # actually renders the template. class Renderer - attr_accessor :lookup_context, :controller + attr_accessor :lookup_context - def initialize(lookup_context, controller) + def initialize(lookup_context) @lookup_context = lookup_context - @controller = controller end # Main render entry point shared by AV and AC. @@ -28,7 +27,7 @@ module ActionView if options.key?(:partial) [render_partial(context, options)] else - StreamingTemplateRenderer.new(@lookup_context, @controller).render(context, options) + StreamingTemplateRenderer.new(@lookup_context).render(context, options) end end @@ -45,11 +44,11 @@ module ActionView private def _template_renderer #:nodoc: - @_template_renderer ||= TemplateRenderer.new(@lookup_context, @controller) + @_template_renderer ||= TemplateRenderer.new(@lookup_context) end def _partial_renderer #:nodoc: - @_partial_renderer ||= PartialRenderer.new(@lookup_context, @controller) + @_partial_renderer ||= PartialRenderer.new(@lookup_context) end end -end \ No newline at end of file +end -- cgit v1.2.3