😸
Rails7.1からRails.cache.incrementだけでキャッシュキーを作成してくれるようになった。
アップグレードの際に調べたのでメモ
Rails7.1からRails.cache.incrementの動作が以下のように変更になった。
# config.cache_store = :mem_cache_storeとして動作確認した。
# Rails7.0まで
# キャッシュに書き込むには事前にRails.cache.writeなどを実行し、キーを作成しておく必要がある。
Rails.cache.increment("hoge", 1, expires_in: 1.day)
=> nil
Rails.cache.exist?('hoge', raw: true)
=> false
Rails.cache.read('hoge', raw: true)
=> nil
# Rails7.1以降
# キーがなくてもRails.cache.incrementを実行すると、キーの作成とincrementを同時に実行してくれる。
Rails.cache.increment("hoge", 1, expires_in: 1.day)
=> 1
Rails.cache.exist?("hoge", raw: true)
=> true
Rails.cache.read('hoge', raw: true)
=> "1"
変更が加えられたPR
Discussion