Rails: Rails.cache からすべてのキーと値を取得する方法 質問する

Rails: Rails.cache からすべてのキーと値を取得する方法 質問する

Rails.cache(memory_store) を使用してユーザーのオンライン/オフライン リストを管理したいと考えています。

基本的に、リクエストが/user/heartbeat?name=JohnRails サーバーに到達した場合、次の処理が実行されます。

def update_status
  name = params.require(:name)
  Rails.cache.write(name, Time.now.utc.iso8601, expires_in: 6.seconds)
end

しかし、次のように Rails.cache に保存されているすべてのデータを取得するにはどうすればよいでしょうか?

def get_status
  # wrong codes, as Rails.cache.read doesn't have :all option.
  ary = Rails.cache.read(:all)
  # deal with array ...
end

しばらくグーグルで調べてみたところ、Rails.cache ではすべてのデータを直接取得する方法が提供されていないようです。それとも、データを保存するより良い方法があるのでしょうか?

を使用していますRails 5.0.2

御時間ありがとうございます!

ベストアンサー1

Redisをお持ちの場合は、次のようなものを使用できますRails.cache.redis.keys

おすすめ記事