【问题标题】:The Rails Metal in Ruby on Rails 3Ruby on Rails 3 中的 Rails Metal
【发布时间】:2011-03-02 19:49:29
【问题描述】:

我正在使用 Ruby on Rails 3,我想实现一些 Rack 中间件。

我知道(但也许我错了!)在版本 3 之前,有 Rails Metal“系统”来处理这些问题。但是现在呢?!

在我的 Rails 应用程序中,我必须找到用于中间件目的的文件(在版本 3 之前,如果我没记错的话,文件夹被命名为“metal”)?那么,我必须如何在application.rb 文件中声明它们?

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 rack middleware


    【解决方案1】:

    查看 Rails 指南上的 Rails on Rack 页面。

    您自己的中间件可以存储在 lib 中,并且可以在 application.rb 的顶部使用。

    【讨论】:

      【解决方案2】:

      查看以下博客文章,可能会回答您的问题:

      http://tektastic.com/2010/07/rails3-rack-and-where-did-my-metal-go.html

      【讨论】:

        【解决方案3】:

        【讨论】:

          【解决方案4】:

          http://www.ruby-on-rails-outsourcing.com/articles/2010/05/28/how-to-create-your-own-rack-middleware-class-in-ruby-on-rails/可能对你有帮助。

          它基本上建议将你的类放在 /lib/class_name.rb 中,然后指示它像这样使用

           Rails::Initializer.run do |config|
             config.middleware.use "ClassName"
           ...
          

          我相信您是对的,rails 3 http://tektastic.com/2010/07/rails3-rack-and-where-did-my-metal-go.html 中没有更多的“金属”选项,您必须改用机架中间件。我不确定这是否会影响性能。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2012-08-22
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-05-11
            • 1970-01-01
            相关资源
            最近更新 更多