2015-05-25 141 views
0

我的lib/api_client內以下模塊:只需調用方法,我可以從控制器訪問Module類方法嗎?

request.rb

module APIClient 

    class Request 
    require 'digest/sha1' 
    require "net/http" 
    require "uri" 

    def self.venues_response 
     ... 
    end 

    end 
end 

至極我包括我的控制器類是這樣的:

class VenuesController < ApplicationController 

    include APIClient 

我想訪問它的方法從這裏venues_controller像這樣:

venues_response 

但我得到以下錯誤:

undefined method `venues_response' for #<VenuesController:0x007f9ee058ad00> 

如果我試試這個:

Request.venues_response 

我得到:

uninitialized constant VenuesController::Request 

唯一的辦法似乎是這樣的:

APIClient::Request.venues_response 

有沒有辦法讓電話簡化LER?我錯過了什麼嗎?

編輯:

忘了提自動加載已經添加在application.rb中:

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

嘗試自動加載lib目錄。在application.rb中,添加'config.autoload_paths + =%W(#{config.root}/lib)' – forthowin

+0

我已經在做它@forthowin。抱歉,我在描述中錯過了它。 – ntonnelier

+0

你得到的錯誤是什麼?它是'沒有類請求'或'沒有方法venues_response的請求'? – evanbikes

回答

0

重命名request.rbapi_client.rb

+0

這使它。謝謝@forthowin。 – ntonnelier

相關問題