модуль AbstractController::Caching::Fragments::ClassMethods
Публичные методы экземпляров
# File actionpack/lib/abstract_controller/caching/fragments.rb, line 53
def fragment_cache_key(value = nil, &key)
self.fragment_cache_keys += [key || -> { value }]
end Позволяет задавать префиксы ключей фрагментов кэша для всего контроллера. Передайте либо константу value, либо блок, который вычисляет значение каждый раз при генерации ключа кэша.
Например, вы можете добавить префикс ко всем ключам фрагментов кэша с идентификатором глобальной версии, чтобы легко аннулировать все кэши.
class ApplicationController fragment_cache_key "v1" end
Когда придёт время аннулировать все фрагменты, просто измените строковую константу. Или постепенно введите аннулирование кэша с помощью вычисляемого значения:
class ApplicationController
fragment_cache_key do
@account.id.odd? ? "v1" : "v2"
end
end
© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.