1

在我的項目中,我已經在lib文件夾下編寫了幾個類,但rails在生產環境中未檢測到這些類。我得到了不健康的恆定錯誤。在lib文件夾下的類未在rails中檢測到

我在開發環境中的生產環境和rails腳本/服務器中使用Apache。

RAILS_ROOT環境有什麼問題嗎?任何人都可以建議如何克服這個問題?

回答

1

我不知道Rails的,但你實現在Ruby中通過這樣的:(將在軌工作過,但軌道必須有一些優雅的方式)

require File.join(File.dirname(__FILE__), "lib",'your_module_name') 
include your_module_name 

試試這個在config/application.rb(我假設你有Rails3中)

config.load_paths += %W(#{config.root}/lib) 

更新:導軌 - why would a model inside RAILS_ROOT/lib not be available in production mode?

+0

其實我只是在生產環境中面臨這樣的問題,在發展ENV做工精細,任何原因 – sharath 2010-11-10 09:21:51

+0

更新。你是否正在從rails2遷移到rails3? – zengr 2010-11-10 09:27:02

+0

不,我使用軌道2.3.2 – sharath 2010-11-10 09:39:39

0

確保您的文件的名稱的類或模塊中定義它,ACCO的名稱相匹配尋找任何目錄。

即:

lib/my_new_class.rb 

class MyNewClass 
end 

或者,如果你有一個目錄層次結構:

lib/my_files/my_module.rb 

module MyFiles 
    module MyModule 
    end 
end 
相關問題