还有request_store gem.从文档:
将此行添加到应用程序的Gemfile:
gem 'request_store'
并使用此代码存储和检索数据(仅限于请求):
# Set RequestStore.store[:foo] = 0 # Get RequestStore.store[:foo]
尝试PerRequestCache。我从SQL查询缓存中窃取了设计。
使用以下命令进行配置config/environment.rb
:
config.middleware.use PerRequestCache
然后将其用于:
PerRequestCache.fetch(:foo_cache){ some_expensive_foo }