instance method
expire_fragment
Ruby on Rails edge
Since v5.0.7.2Signature
expire_fragment(key, options = nil)
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).
Parameters
-
keyreq -
optionsopt = nil
Source
# File actionpack/lib/abstract_controller/caching/fragments.rb, line 129
def expire_fragment(key, options = nil)
return unless cache_configured?
key = combined_fragment_cache_key(key) unless key.is_a?(Regexp)
instrument_fragment_cache :expire_fragment, key do
if key.is_a?(Regexp)
cache_store.delete_matched(key, options)
else
cache_store.delete(key, options)
end
end
end
Defined in actionpack/lib/abstract_controller/caching/fragments.rb line 129
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in AbstractController::Caching::Fragments