我正在重构构建到Rails应用程序中的一些逻辑到中间件中,而我遇到的一个烦恼是看似缺乏将它们放在哪里的约定。你把你的Rack中间件文件放在哪里?
目前我已经看中了app/middleware
但我可以很容易地将其移动到vendor/middleware
也许vendor/plugins/middleware
...
最大的问题是有要求的个人档案在config/environment.rb
require "app/middleware/system_message"
require "app/middleware/rack_backstage"
顶部
否则我会在config.middleware.use
行上收到未初始化的常量错误。这可能会很快变得凌乱。我宁愿把它放在某处的初始化程序中。
是否有传统的地方放这东西?
我这个赏金寻找具体的答案是:在那里我可以把需要的线条使他们不会弄乱environment.rb文件中,但仍是config.middleware.use之前得到加载电话?我试过的一切都会导致未初始化的常量错误。
更新:现在我们正在使用的Rails 3.0,我把一个Rails应用程序像任何其他应用程序架;中间件的代码文件进入lib
(或Gemfile
中列出的宝石),并且需要并加载到config.ru
。
谢谢,当我更新时,我会记住这一点。 – 2012-02-10 06:22:47
请问您可以添加任何链接以供参考?它不适合我,Google/Rails指南也无济于事......谢谢! – dgilperez 2012-11-08 12:09:38
我意识到我犯了一个愚蠢的错误,把它放在我的根文件夹中,而不是(已经指定的)应用程序文件夹中,这让我很开心。所以,foo_app/app/middleware/file.rb。 – d3vkit 2013-03-28 00:05:40