Ruby On Rails 7 提示`Redis.current=`将被废弃
环境
Ruby: 3.1.1
Ruby On Rails: 7.0.2.3
redis-rb: 4.6
问题
在config/initializers/redis.rb
中定义 redis 的配置后,提示如下信息
`Redis.current=` is deprecated and will be removed in 5.0.
如字面上意思所说,redis-rb
这个 gem 在 5.0 版本将会移除掉 Redis.current
方法
解决方案
需要将所有使用Redis.current
的地方改为手动实例化 Redis 对象,相关的配置信息可以通过环境变量REDIS_URL
来配置,sidekiq 默认也会使用这个环境变量作为 Redis 的配置,实例化的方式如下:
# 这里使用 `fetch` 来获取环境变量的值,这意味着如果没有这个环境变量将会报错
Redis.new(url: ENV.fetch("REDIS_URL"))
评论