method

expire_fragment

Importance_3

Method deprecated or moved

This method is deprecated or moved on the latest stable version. The last existing version (v4.2.9) is shown here.

These similar methods exist in v7.1.3.2:

expire_fragment(key, options = nil) public

Removes fragments from the cache.

key can take one of three forms:

  • String - This would normally take the form of a path, like pages/45/notes.

  • Hash - Treated as an implicit call to url_for, like { controller: 'pages', action: 'notes', id: 45}

  • Regexp - Will remove any fragment that matches, so %r{pages/\d*/notes} might remove all notes. Make sure you don’t use anchors in the regex (^ or $) because the actual filename matched looks like ./cache/filename/path.cache. Note: Regexp expiration is only supported on caches that can iterate over all keys (unlike memcached).

options is passed through to the cache store’s delete method (or delete_matched, for Regexp keys).

Show source
Register or log in to add new notes.
April 9, 2009
1 thank

Outside of app code

How do I call this from script/console?

February 12, 2010
1 thank

re: Options

@ramanavel - The options are dependent on the cache store that you’re using. You’ll need to have a look at what the cache store you’re using allows.

e.g. MemCacheStore allows the use of time criteria based :expires_in, most of the cache stores don’t.

http://guides.rubyonrails.org/caching_with_rails.html might provide a little more information.

December 21, 2009
0 thanks

Expire cache from console or whatever...

I know only one possible method:

ApplicationController.new.expire_fragment(:your_fragment)

February 9, 2010
0 thanks

Options

What are all the options here please?…