清除rails中的缓存而不删除其他所有内容

时间:2015-09-01 07:23:02

标签: ruby-on-rails ruby-on-rails-4 caching redis

我在rails中使用redis作为缓存存储

执行Rails.cache.clear确实会清除缓存,但实际上会删除Redis中的所有其他内容。

有没有办法让所有缓存密钥到期而不完全删除redis中的所有其他内容?

1 个答案:

答案 0 :(得分:-1)

如果您已经知道了密钥,可以这样做

# delete a single key
Rails.cache.delete(:key)

# delete many keys
Rails.cache.delete_if {|k, v| k =~ 'key' }

实际上Rails.cache键只是一个{}哈希,所以你可以使用任何一种ruby.hash方法。(希望我没错)