Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 检查Rails缓存内容的方法?_Ruby On Rails - Fatal编程技术网

Ruby on rails 检查Rails缓存内容的方法?

Ruby on rails 检查Rails缓存内容的方法?,ruby-on-rails,Ruby On Rails,我试图在Heroku上运行的Rails(5.0.0.beta2)中调试缓存视图中的过时条目。我想查看缓存中的条目,以确认它们的命名方式与我期望的相同,并且在应该的时候过期 有没有办法做到这一点?我发现了这个问题,建议使用Rails.cache.read(“您的密钥”)。因此,使用bin/rails c(在Heroku上)我尝试: 其中19是我看到的其中一个用户的:id。这让我有点困惑 如果我尝试: User.find(19).cache_key => "users/19-201603161

我试图在Heroku上运行的Rails(5.0.0.beta2)中调试缓存视图中的过时条目。我想查看缓存中的条目,以确认它们的命名方式与我期望的相同,并且在应该的时候过期

有没有办法做到这一点?我发现了这个问题,建议使用
Rails.cache.read(“您的密钥”)
。因此,使用
bin/rails c
(在Heroku上)我尝试:

其中19是我看到的其中一个用户的
:id
。这让我有点困惑

如果我尝试:

User.find(19).cache_key => "users/19-20160316151228266421"
但当缓存项假定已过期时,日志行如下所示:

Expire fragment views/users/19-20160316151228266421 (0.2ms)
因此,我尝试在该路径上执行
Rails.cache.read
,这也返回了
nil
——我还尝试对一个尚未过期的用户执行同样的操作,并再次获得
nil


我想知道路径上的差异是否表明存在问题,或者是否有办法查看所创建密钥的路径(我一直假设它至少与斜杠后面的部分匹配)

缓存具有以下实例变量:

[:@options, :@data, :@key_access, :@max_size, :@max_prune_time, :@cache_size, :@monitor, :@pruning]
您可以使用以下方法检查数据:

Rails.cache.instance_variable_get(:@data)

您是否尝试过
Rails.cache.read('views/users/19-20160316151228266421')
?对不起,我应该提到的。这也得到了我的
nil
。我还尝试了一个尚未过期的用户。
Rails.cache.instance_variable_get(:@data)