views:

293

answers:

1

Hi, I'm using flickr-fu gem within a rails application for flickr api integration. I'm following the sample code for setting up a web app shown below:

  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

I've registered flickr_callback as the callback method that flickr calls after the authorization process.

The problem is with the line in flickr_callback when I try and assign params[:frob] to flickr.auth.frob. I get the following error:

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

Even if I just require 'flickr_fu' from within console, create a new flickr instance, and attempt to assign to frob, I get the same error. I took a look at the gem source on github, and the setter frob= is set within the Flickr::Auth module, so I'm clueless as to where the error is. The API calls work successfully and the flickr object is initialized fine.

+1  A: 

The issue is that the flickr-fu gem from gemcutter or github is at version 0.1.4, and the frob setter method wasn't implemented until subsequent version. Instead install the gem commonthread-flickr_fu v0.3.0 from github, and the frob is writeable.

thedob