2010-02-12 1 views
0

Я пытаюсь написать API-оболочку в Ruby и не могу сказать, как я могу вызвать методы HTTParty из подкласса.Как использовать методы HTTParty в подклассе?

Я хочу, чтобы пользователь создал соединение с API, а затем мог запрашивать результаты из подклассов.

module ApiWrapper 
    class Connection 
    include HTTParty 
    base_uri '...' 

    def initialize(u, p) 
     ... 
    end 

    def contacts 
     ApiWrapper::Contact 
    end 
    end 
end 

module ApiWrapper 
    class Contact 
    def all 
     # issue httparty get request here that is created from the Connection class 
    end 
    end 
end 


## The user would do this 
conn = ApiWrapper::Connection.new('username', 'password') 
contacts = conn.contacts.all 

ответ

3

all() является методом экземпляра, а не метод класса, но вы вызываете его как метод класса. Попробуйте следующее:

module ApiWrapper 
    class Contact 
    def self.all 
     # issue httparty get request here that is created from the Connection class 
    end 
    end 
end