あなたが1つのより多くのモデル必要な複数の認証プロバイダと工夫を使用するには、この
#config/initializers/devise.rb
#provider1
config.omniauth :facebook, ENV['FACEBOOK_APP_ID'], ENV['FACEBOOK_SECRET'],
:site => 'https://graph.facebook.com/',
:authorize_path => '/oauth/authorize',
:access_token_path => '/oauth/access_token',
:scope => 'email, user_birthday, read_stream, read_friendlists, read_insights, read_mailbox, read_requests, xmpp_login, user_online_presence, friends_online_presence, ads_management, create_event, manage_friendlists, manage_notifications, publish_actions, publish_stream, rsvp_event, user_about_me, user_activities, user_birthday, user_checkins, user_education_history, user_events, user_groups, user_hometown, user_interests, user_likes, user_location, user_notes, user_photos, user_questions, user_relationships, user_relationship_details, user_religion_politics, user_status, user_subscriptions, user_videos, user_website, user_work_history'
#provider2
config.omniauth :twitter, ENV['TWITTER_KEY'], ENV['TWITTER_SECRET'],
:scope => {
:secure_image_url => 'true',
:image_size => 'original',
:authorize_params => {
:force_login => 'true'
}
}
#provider3
config.omniauth :google_oauth2, ENV["GOOGLE_KEY"], ENV["GOOGLE_SECRET"]
公式の文書は、行く方法です – emaillenin
私はこの同じ問題を抱えています...任意のソリューションですか? –
私はこれを見つけました:https://github.com/mohitjain/social-login-in-railsしかし、私はそれがユーザー/認証をTwitterからリンクするという問題を解決できるとは思いません。 Twitterは電子メールを共有せず、彼のUserモデルはその電子メールを使って以前のレコードを探します。うーん...うまくいけば、誰かがこのすべてに対して良い解決策を見つけることができます。 – robertwbradford