2013-05-02 308 views
0

我只是想了解如何使用特定的紅寶石寶石。例如,採取這個reddit gem。它說,有這樣的代碼開始:紅寶石寶石文檔

require 'snoo' 

# Create a new instance of the client 
reddit = Snoo::Client.new 

# Log into reddit 
reddit.log_in 'Username', 'Password' 

# Send a private message to me (Paradox!) 
reddit.send_pm 'Paradox', 'Snoo rubygem rocks!', "Hey Paradox, I'm trying your Snoo rubygem out and it rocks. Thanks for providing such an awesome thing!" 

# Log back out of reddit 
reddit.log_out 

大,但在the documentation你可以看到,客戶端類沒有非常許多令人興奮的功能。令人興奮的功能在賬戶類,但也沒有辦法得到它......因爲如果我嘗試這樣的事情

reddit = Snoo::Account.new 

我得到這個錯誤:

`initialize': undefined method `new' for Snoo::Account:Module (NoMethodError) 

好了,有沒有新方法,但如何製作Account對象並使用其功能,如log_in

回答

2

Snoo::Account是一個紅寶石Module,已被混合到Snoo::Client寶石。 Snoo::Account的所有功能已經在reddit對象上提供給您。

自述文件中的簡介文檔沒有說明這一點。但否則關於寶石的文檔對我來說看起來不錯。

1

github的源代碼進行簡短的介紹讓我相信這是文檔中的錯誤,因爲客戶端清楚地包含了許多其他模塊的功能,包括您希望訪問的帳戶模塊。在你的示例代碼,請嘗試以下方法來確認它自己:

reddit.methods.sort 
reddit.is_a? Snoo::Account 

我假設的文檔軟件沒趕上包括爲他們使用的模塊執行。