问题描述
使用rails s
启动服务器时,出现以下错误。
解决方法
在您的情况下,options
是ActionDispatch::Request::Session::Options
对象,而不是Hash
。您可以调用.to_hash
将其转换为Hash
。
您可以仅使用slice
提取相关的键/值来代替当前的方法:
REDIS_SET_OPTIONS = %i(ex px nx xx keepttl).freeze
def set (key,value,options = nil)
return super(key,value) unless options
super(key,options.to_hash.slice(*REDIS_SET_OPTIONS))
end
,
.key?按照约定将返回一个布尔值。因此,您的块是无操作的,因为结果不会做任何事情。你想做什么?
,虽然这个问题真的很晚,但我目前遇到了这个问题。在我的情况下,由于依赖于 redis-rails 的 redis-store 引发了异常。所以当我修复 redis-rails 的版本时,异常消失了。如果您还在为这个问题苦苦挣扎,希望能帮到您。
gem 'redis-rails','~> 4.0.0'