【发布时间】:2017-10-02 20:51:46
【问题描述】:
我想用 Rails.cache(memory_store) 维护一个用户在线/离线列表。
基本上,如果一个请求 /user/heartbeat?name=John 到达 Rails 服务器,它会简单地:
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
我google了一下,好像Rails.cache没有提供直接获取所有数据的方法。还是有更好的方法来存储数据?
我正在使用Rails 5.0.2。
感谢您的宝贵时间!
【问题讨论】:
标签: ruby-on-rails caching