ruby-on-rails - 使用查询字符串参数进行 Rails 操作缓存

标签 ruby-on-rails caching controller

如何使用 Rails 缓存我的 REST Controller ,其中我的操作具有查询字符串参数?

Example: GET /products/all.xml?max_price=200

谢谢!

最佳答案

如果您想根据所有查询参数(或者说几乎所有查询参数)缓存操作,您可以执行以下操作:

caches_action :my_action, :cache_path => Proc.new { |c| c.params }

或者,也许您想要仅用于分析的除某些参数之外的所有参数(但这与您正在获取的记录无关):

caches_action :my_action, :cache_path => Proc.new { |c| c.params.delete_if { |k,v| k.starts_with?('utm_') } }

关于ruby-on-rails - 使用查询字符串参数进行 Rails 操作缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1988658/

相关文章:

php - 从 View / Controller 获取 pimcore 片段名称

javascript - 如何拖放表格?

ruby-on-rails - 使用 Rspec 进行 Controller 测试中的 Rails 协会问题

ruby-on-rails - 如何在开发过程中关闭 Rails 缓存

java - 使用 Spring 以声明方式缓存 bean 方法的返回值

c# - MVC 4 返回 JSON 作为 ActionResult

ruby-on-rails - 如何使用 Rails 4 缩小 JavaScript 和 CSS?

ruby-on-rails - Rails 控制台中的 Postgres 连接过多

python - 使用 Flask 在特定页面上禁用缓存

angularjs - 带有服务注入(inject)的测试 Controller