aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2008-02-03 01:11:42 +0000
committerJeremy Kemper <jeremy@bitsweat.net>2008-02-03 01:11:42 +0000
commit780151c01e7e2d953f2701c2b931a1b33e4b88ca (patch)
tree4dd3dc7f195030ce3bacadda94945b98e13f7367
parent78253acb599102528498d2257a37361a39f850f7 (diff)
downloadrails-780151c01e7e2d953f2701c2b931a1b33e4b88ca.tar.gz
rails-780151c01e7e2d953f2701c2b931a1b33e4b88ca.tar.bz2
rails-780151c01e7e2d953f2701c2b931a1b33e4b88ca.zip
Fix missing extension for caching. Closes #10733 [Catfish, tcoppock, mpalmer]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8791 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
-rw-r--r--actionpack/lib/action_view/base.rb2
-rw-r--r--actionpack/lib/action_view/helpers/cache_helper.rb3
2 files changed, 3 insertions, 2 deletions
diff --git a/actionpack/lib/action_view/base.rb b/actionpack/lib/action_view/base.rb
index cb53fbafc8..b362bb9555 100644
--- a/actionpack/lib/action_view/base.rb
+++ b/actionpack/lib/action_view/base.rb
@@ -158,6 +158,7 @@ module ActionView #:nodoc:
attr_internal :cookies, :flash, :headers, :params, :request, :response, :session
attr_writer :template_format
+ attr_accessor :current_render_extension
# Specify trim mode for the ERB compiler. Defaults to '-'.
# See ERb documentation for suitable values.
@@ -358,6 +359,7 @@ If you are rendering a subtemplate, you must now use controller-like partial syn
# The hash in <tt>local_assigns</tt> is made available as local variables.
def render_template(template_extension, template, file_path = nil, local_assigns = {}) #:nodoc:
handler = self.class.handler_class_for_extension(template_extension).new(self)
+ @current_render_extension = template_extension
if handler.compilable?
compile_and_render_template(handler, template, file_path, local_assigns)
diff --git a/actionpack/lib/action_view/helpers/cache_helper.rb b/actionpack/lib/action_view/helpers/cache_helper.rb
index aa85b9fb40..c2aab5aa72 100644
--- a/actionpack/lib/action_view/helpers/cache_helper.rb
+++ b/actionpack/lib/action_view/helpers/cache_helper.rb
@@ -32,8 +32,7 @@ module ActionView
# <i>Topics listed alphabetically</i>
# <% end %>
def cache(name = {}, options = nil, &block)
- template_extension = @finder.pick_template_extension(first_render)[/\.?(\w+)$/, 1].to_sym
- handler = Base.handler_class_for_extension(template_extension)
+ handler = Base.handler_class_for_extension(current_render_extension.to_sym)
handler.new(@controller).cache_fragment(block, name, options)
end
end