module ActionController::Caching - actionpack-4.2.4 Documentation

# module ActionController::Caching

Caching is a cheap way of speeding up slow applications by keeping the result of calculations, renderings, and database calls around for subsequent requests.

You can read more about each approach by clicking the modules below.

Note: To turn off all caching, set

    config.action_controller.perform_caching = false

## Caching stores¶ ↑

All the caching stores from ActiveSupport::Cache are available to be used as backends for Action Controller caching.

Configuration examples (FileStore is the default):

    config.action_controller.cache_store = :memory_store
    config.action_controller.cache_store = :file_store, '/path/to/cache/directory'
    config.action_controller.cache_store = :mem_cache_store, 'localhost'
    config.action_controller.cache_store = :mem_cache_store, Memcached::Rails.new('localhost:11211')
    config.action_controller.cache_store = MyOwnStore.new('parameter')

### Public Instance Methods

view_cache_dependencies() click to toggle source

    # File lib/action_controller/caching.rb, line 75
    def view_cache_dependencies
      self.class._view_cache_dependencies.map { |dep| instance_exec(&dep) }.compact
    end

### Protected Instance Methods

cache(key, options = {}) { || ... } click to toggle source

Convenience accessor.

    # File lib/action_controller/caching.rb, line 81
    def cache(key, options = {}, &block)
      if cache_configured?
        cache_store.fetch(ActiveSupport::Cache.expand_cache_key(key, :controller), options, &block)
      else
        yield
      end
    end