我正在尝试在我的 rails 4 应用程序中实现缓存。我安装了redis,根据这篇文章设置配置,但是每次我尝试在控制器中缓存一些东西时,第一次刷新我得到数据,第二次我得到零。当我去 redis cli 并执行 KEYS * 时,我看到那个密钥就在那里。
我认为这是我的 redis 问题所以我禁用了 redis 并在 development.rb 中放了
config.cache_store = :memory_store, { size: 128.megabytes }
但如果我尝试
Rails.cache.fetch("dashboard") do
User.where(:active=>true).size
end
我得到 nil 作为对我的行为的回应。
我做错了什么缓存总是返回 nil ?
编辑:这是我redis的development.rb文件的一部分
config.cache_store = :redis_store, {
expires_in: 1.hour,
namespace: 'cache',
redis: { host: 'localhost', port: 6379, db: 0 },
}