gpt4 book ai didi

ruby-on-rails - Rails 每个请求的哈希?

转载 作者:行者123 更新时间:2023-12-03 20:51:07 25 4
gpt4 key购买 nike

有没有办法在 Rails 中缓存每个请求的数据?对于给定的 Rails/mongrel 请求,我有一个半昂贵的操作的结果,我想稍后在该请求中访问几次。是否有可以存储和访问此类数据的哈希?

它需要是相当全局的并且可以从 View 、 Controller 和库中访问,就像 Rails.cache 和 I18n 一样。

如果需要的话,我可以做一些猴子修补。

  • Memcached 不起作用,因为它将在请求之间共享,这是我不想要的。
  • 全局变量同样不起作用,因为不同的请求将共享相同的数据,这不是我想要的。
  • 实例变量不起作用,因为我想从不同的类中访问数据。
  • 最佳答案

    试试 PerRequestCache .我从 SQL 查询缓存中窃取了设计。

    config/environment.rb 中进行配置和:

    config.middleware.use PerRequestCache

    然后使用它:
    PerRequestCache.fetch(:foo_cache){ some_expensive_foo }

    关于ruby-on-rails - Rails 每个请求的哈希?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/660599/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com