我在Rails 4.1
上設置Grape
。根據http://funonrails.com/2014/03/building-restful-api-using-grape-in-rails/,我把它放在lib
裏面。爲什麼Rails自動加載失敗,文件在那裏?
我想放在分隔的文件的輔助方法,文件結構是類似以下內容:
lib
|--- api
|--- root.rb
|--- helpers
|--- base_helper.rb
而且裏面root.rb
,API定義:
module API
class Root < Grape::API
formatter :json, Grape::Formatter::Jbuilder
helpers API::BaseHelper
end
end
的base_helper.rb
內容只是簡單的:
module API
module BaseHelper
def test
"I am a test helper"
end
end
end
當我啓動應用程序時,我ge t:
/Users/Larry/.rvm/gems/[email protected]/gems/activesupport-4.1.1/lib/active_support/dependencies.rb:481:in `load_missing_constant': Unable to autoload constant BaseHelper, expected /Users/Larry/Gallows/jianshu.io/maleskine/lib/api/helpers/base_helper.rb to define it (LoadError)
但是base_helper.rb
實際上是在錯誤中提到的正確路徑。
如果我刪除helpers API::BaseHelper
,autoload
可以找到BaseHelper
正確。
這是爲什麼?我做錯了什麼?
lib/api/helpers/base_helper.rb文件的內容是什麼? – 2014-10-01 06:59:35