Spec-Zone.ru › Ruby on Rails 7.1

модуль AbstractController::Caching::Fragments::ClassMethods

Публичные методы экземпляров

fragment_cache_key(value = nil, &key) Показать исходный код
# File actionpack/lib/abstract_controller/caching/fragments.rb, line 59
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–2021 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API