Twitter Oauth问题

问题描述:

我在这里使用了几个不同的宝石(Devise,Warden,Warden_Oauth),但我认为你可以回答这个问题,而不必熟悉它们。我试图执行Twitter Oauth策略,应用程序首先通过access_token和access_secret查找用户,然后如果找不到用户,则会创建一个新用户。我无法弄清楚如何创建新的用户/在这个块中我应该这样做。Twitter Oauth问题

config.warden do |manager| 

     manager.oauth(:twitter) do |twitter| 
     twitter.consumer_secret = "<secret>" 
     twitter.consumer_key = "<key>" 
     twitter.options :site => 'http://twitter.com' 
     end 

     Warden::OAuth.access_token_user_finder(:twitter) do |access_token| 
     User.find_by_access_token_and_access_secret(access_token.token, access_token.secret) 
     end 

     manager.default_strategies.unshift :twitter_oauth 
end 

感谢您的帮助。

决不*长的工作,但与他人EXP,我想它应该是这样的

Warden::OAuth.access_token_user_finder(:twitter) do |access_token| 
    user = User.find_by_access_token_and_access_secret(access_token.token, access_token.secret) 
    user ||= User.create(:access_token => access_token.token, :secret => access_token.secret) 
    end 
end