Spec-Zone.ru › Ruby on Rails 8.1

модуль 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–2021 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

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