I’ve written a plugin to allow for time based fragment caching. It lets
you do things like:
<% cache ‘fragment_name’, 10.minutes.from_now do %>
something intensive which will be cached for 10 minutes
<% end %>Also, there’s a convenience method so that in your controllers you can
do:
when_fragment_expired ‘fragment_name’, 10.minutes_from_now do
@stuff = do_something_intensive
end
This will check the fragment cache, see if it’s expired and if so it
will execute the code in the block. It deals with expiring the fragment
itself, so if using this you don’t need to have the expiry time in your
views and you can keep yourself DRY by having the expiry time in just
one place.
Hopefully it’s of use to someone.
SVN repo is here:
http://svn.livsey.org/plugins/timed_fragment_cache/
More details on my blog:
http://livsey.org/articles/2006/08/25/timed_fragment_cache-plugin-fragment-caching-with-time-based-expiry
Thanks.
Richard L.