Ho usato Devise e omniauth-facebook nella mia app Rails 3 per l'autenticazione di Facebook, basata su questo tutorial: Adding Facebook auth to Rails 3.1 app, e funziona benissimo!token di accesso da concepire + omniauth-facebook autenticazione per l'utilizzo in fb-graph
Ma ora voglio avere l'integrazione completa di Facebook nella mia app, con cui posso accedere alle foto, agli amici, ecc. Dell'utente, e per questo sto pensando di usare fb_graph. fb_graph richiede un token e volevo sapere come modificare il mio modello utente per salvare il token e usarlo in fb_graph. Qualsiasi aiuto in merito a questo argomento sarà molto apprezzato.
Ecco come il mio modello User assomiglia a questo momento:
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :token_authenticatable, :encryptable, :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable, :omniauthable
# Setup accessible (or protected) attributes for your model
attr_accessible :email, :password, :password_confirmation, :remember_me
has_many :photos
has_many :scrapbooks
def self.find_for_facebook_oauth(access_token, signed_in_resource=nil)
data = access_token.extra.raw_info
if user = User.where(:email => data.email).first
user
else # Create a user with a stub password.
User.create!(:email => data.email, :password => Devise.friendly_token[0,20])
end
end
def self.new_with_session(params, session)
super.tap do |user|
if data = session["devise.facebook_data"] && session["devise.facebook_data"]["extra"]["raw_info"]
user.email = data["email"]
end
end
end
end
Diamo [vedere questo] (http://facebook-developer.net/2008/08/ 05/ottimizzare-your-Database-tabelle-per-facebook-connect /). Creare il modello 'Facebook' e memorizzarlo in quella tabella ma non sono sicuro che sia il modo migliore. : P – Rafaiel