2009-12-01 83 views
0

我在flickr api集成的rails應用程序中使用flickr-fu gem。我在下面的示例代碼設置如下圖所示的web應用程序:flickr-fu簡單的例子不工作

def flickr_create 
    flickr = Flickr.new(File.join(RAILS_ROOT, 'config', 'flickr.yml')) 
    redirect_to flickr.auth.url(:read) 
    end 

    def flickr_callback 
    flickr = Flickr.new(File.join(RAILS_ROOT, 'config', 'flickr.yml')) 
    flickr.auth.frob = params[:frob] 
    current_user.update_attribute :flickr_token, flickr.auth.token.token 
    flash[:notice] = "Succesfully authenticated with Flickr" 
    redirect_to :flickr_stream 
    end 

我已經註冊flickr_callback作爲Flickr的授權過程後調用回調方法。

當我嘗試將params [:frob]賦值給flickr.auth.frob時,問題與flickr_callback中的行有關。我得到以下錯誤:

undefined method `frob=' for Flickr::Auth:0x24b3640

即使我只是需要從控制檯中「flickr_fu」,創建一個新的Flickr實例,並試圖向FROB,我得到了同樣的錯誤。我看了一下github上的gem源碼,setter frob =被設置在Flickr :: Auth模塊中,所以我對於錯誤的位置一無所知。 API調用成功並且flickr對象被正確初始化。

回答

2

問題是,gemcutter或github中的flickr-fu寶石版本是0.1.4,frob setter方法直到後續版本才實現。而應該從github安裝gem commonthread-flickr_fu v0.3.0,並且frob是可寫的。