2012-11-10 17 views
0

請原諒我,因爲我找不到它,因此我已經回答了這個問題。跨導軌應用程序訪問類對象

我想包括我在lib目錄下的Rails 3中編寫的類,以便我的控制器可以訪問這些方法。

該類位於此目錄中,具體爲:lib/assets,它被稱爲Ducksboard。

我試圖包括這在我application_controller:

class ApplicationController < ActionController::Base 
    include Ducksboard 

但我不斷收到路由錯誤這樣

未初始化的常量的ApplicationController :: Ducksboard

我甚至更新了應用程序配置文件,以便它在庫中搜索資產

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

有沒有更好的方法來創建類並通過我的應用程序訪問它們?這似乎沒有工作。

謝謝!

+0

這是爲什麼標籤資產管道添加一個初始值設定? – mrbrdo

回答

0

爲什麼要把它放在lib/資產?你知道在Rails中使用哪些資產,對嗎?

無論如何,你需要在配置/初始化

require_dependency 'assets/ducksboard' 
+0

我在閱讀這個資產組織:http://guides.rubyonrails.org/asset_pipeline.html,所以我可能誤解了它。鑑於這是錯誤的設計,我應該在Rails應用程序中放置哪些新類? – jasdeepg

+0

將類/文件放在'lib'中。 –

+0

沒錯。把它放在那裏,並根據我的答案添加一個初始化程序。在執行require時,請執行__not__將lib /添加到路徑(僅在lib /之後提供路徑)。例如。在lib/ducksboard.rb中有require_dependency'ducksboard'。 – mrbrdo

相關問題