“Invalidar” chave em cache quando registro / mudança de documento

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).”