我正在重構構建到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