0

当我在 developent.rb 中使用此配置在本地启动 rails 服务器(rails 5.2.0,ruby 2.5.1)时

config.action_controller.perform_caching = true  
config.cache_store = :redis_cache_storage

安装了gem redis '4.0.1'

我有这个错误:

Traceback(最近一次通话最后一次)

.rvm/gems/ruby-2.5.1@rails-test/gems/activesupport-5.2.0/lib/active_support/cache.rb:109:in `rescue in retrieve_store_class': Could not find cache store adapter for redis_cache_storage (cannot load such file -- active_support/cache/redis_cache_storage) (RuntimeError)

有任何想法吗?

4

1 回答 1

0

我不确定你从哪里得到:redis_cache_storage的,但那是行不通的,因为它不是 Rails 的一部分;Rails 不包含将 Redis 用作开箱即用缓存的代码。您需要使用redis-rails gem 来使用 Redis 作为 Rails 的缓存:

将此添加到您的 Gemfile 中:

gem 'redis-rails'

然后将其添加到您的配置中:

# config/application.rb
config.cache_store = :redis_store, "redis://localhost:6379/0/cache", { expires_in: 90.minutes }

更多配置 gem 的信息和选项可以在https://github.com/redis-store/redis-rails找到。

于 2018-04-17T03:13:40.760 回答