From 2894887925a3613f1ea9f81bd72ec1f51c3e06da Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Sat, 8 Sep 2007 04:31:26 +0000 Subject: Explicitly require active_record/query_cache before using it. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7419 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- actionpack/CHANGELOG | 2 ++ actionpack/lib/action_controller/caching.rb | 24 +++++++++++++----------- 2 files changed, 15 insertions(+), 11 deletions(-) (limited to 'actionpack') diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG index ac1c568a94..fdf6fd7e8c 100644 --- a/actionpack/CHANGELOG +++ b/actionpack/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Explicitly require active_record/query_cache before using it. [Jeremy Kemper] + * Fix layout overriding response status. #9476 [lotswholetime] * Add fieldset_tag for generating fieldsets, closes #9477. [djanowski] diff --git a/actionpack/lib/action_controller/caching.rb b/actionpack/lib/action_controller/caching.rb index 3434f5f9da..e6e42b9126 100644 --- a/actionpack/lib/action_controller/caching.rb +++ b/actionpack/lib/action_controller/caching.rb @@ -12,7 +12,10 @@ module ActionController #:nodoc: module Caching def self.included(base) #:nodoc: base.send(:include, Pages, Actions, Fragments) - base.send(:include, Sweeping, SqlCache) if defined?(ActiveRecord) + if defined?(ActiveRecord) + require 'active_record/query_cache' + base.send(:include, Sweeping, SqlCache) + end base.class_eval do @@perform_caching = true @@ -656,20 +659,19 @@ module ActionController #:nodoc: end end end - - if defined?(ActiveRecord) - module SqlCache - def self.included(base) #:nodoc: + + module SqlCache + def self.included(base) #:nodoc: + if defined?(ActiveRecord) && ActiveRecord::Base.respond_to?(:cache) base.alias_method_chain :perform_action, :caching end - - def perform_action_with_caching - ActiveRecord::Base.cache do - perform_action_without_caching - end + end + + def perform_action_with_caching + ActiveRecord::Base.cache do + perform_action_without_caching end end end - end end -- cgit v1.2.3