Spec-Zone.ru › Ruby on Rails 5.2

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

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

fragment_cache_key(value = nil, &key) Показать исходный код
# File actionpack/lib/abstract_controller/caching/fragments.rb, line 58
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.

Spec-Zone.ru

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