Lendo esta postagem do blog , descobri que essa maneira de expirar um cache é muito útil.
Considere o seguinte exemplo:
class Place < ActiveRecord::Base
def flickr_place
flickr = FlickRaw::Flickr.new
@flickr_place ||= Rails.cache.fetch("places/#{self.id}-#{self.updated_at}/flickr/place_id", expires_in: 7.days) do
# Some code here
end
end
end
“… Ao usar self.updated_at dentro da chave do cache, garantimos que o cache é automaticamente invalidado se atualizarmos o local (o que pode incluir novas coordenadas).”