【发布时间】:2012-09-01 12:18:13
【问题描述】:
在我的 Rails 3.2 应用程序中,我必须在某个类类型的中间件实例上调用方法。
我尝试使用Rails.application.middleware,但这不起作用,因为它只包装了中间件类,而不是它们的实例。
现在我正在使用 Ruby 的 instance_variable_get 和 is_a? 从 Rails.application.app 开始遍历中间件链,但这感觉不对,特别是因为没有指定的中间件存储上下文的方式。例如Rack::Cache::Context 将下一个实例存储在名为@backend 的变量中,而大多数其他实例使用@app。
有没有更好的方法来查找中间件实例?
【问题讨论】:
标签: ruby-on-rails rack