модуль ActiveRecord::QueryCache::ClassMethods
Публичные методы экземпляров
# File activerecord/lib/active_record/query_cache.rb, line 9
def cache(&block)
if connected? || !configurations.empty?
pool = connection_pool
was_enabled = pool.query_cache_enabled
begin
pool.enable_query_cache(&block)
ensure
pool.clear_query_cache unless was_enabled
end
else
yield
end
end Включить кэширование запросов в блоке, если Active Record настроен. В противном случае выполнит заданный блок.
# File activerecord/lib/active_record/query_cache.rb, line 28
def uncached(dirties: true, &block)
if connected? || !configurations.empty?
connection_pool.disable_query_cache(dirties: dirties, &block)
else
yield
end
end Отключить кэширование запросов в блоке, если Active Record настроен. В противном случае выполнит заданный блок.
Установите dirties: false для предотвращения очистки кэшей запросов всех подключений операциями записи. (По умолчанию операции записи очищают кэши запросов всех подключений, если это реплики, кэш которых теперь устарел.)
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.