Techioz Blog

Railsを使用しない場合はActiveSupportのcache_format_versionを設定します

概要

ActiveSupport::Cache (require ‘active_support/cache’ 経由) を使用する小さなアプリケーションがありますが、完全な Rails アプリケーションではありません。保留中の非推奨を解決するには、cache.active_support_cache_format_version をどのように設定すればよいですか?

https://translate.google.com/translate?hl=ja&sl=en&tl=ja&u=https://guides.rubyonrails.org/upgrading_ruby_on_rails.html#new-activesupport-cache-serialization-format

私はそれを使用します:

@cache = ActiveSupport::Cache::FileStore.new("/tmp/[...]"))
@cache.fetch([...]) do
 
end

私のアプリケーションには他の ActiveSupport モジュールがありません。

私が見つけることができるものはすべて、Rails 構成でのこれの設定を参照していますが、私のアプリケーションには存在しません。キャッシュ オブジェクトに直接設定できると期待していましたが、これを実現するための利用可能なメソッドがないようです。

https://api.rubyonrails.org/classes/ActiveSupport/Cache.html だけでなく、.methods、さらには公開されていないものがある場合に備えて .private_methods もチェックしました。

解決策

これは単なる属性アクセサーです。

ActiveSupport::Cache.format_version = 7.0