omniauth google - приложение для получения электронной почты
Я просто создаю новое приложение rails, используя devise и omniauth. Моя первая цель - заполнить базу данных идентификатором и адресом электронной почты из аккаунта Google.
К сожалению, до сих пор я получаю только идентификатор.
Это мой пользовательский контроллер:
class User < ApplicationRecord
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable, :omniauthable, omniauth_providers: [:google_oauth2]
attr_accessor :email
def email_required?
false
end
def self.from_omniauth(auth)
where(provider: auth.provider, uid: auth.uid).first_or_create do |user|
user.provider = auth.provider
user.uid = auth.uid
user.email = auth.info.email
user.password = Devise.friendly_token[0,20]
end
end
end
И мой devise.rb
config.omniauth :google_oauth2, ENV['google_client_id'], ENV['google_client_secret'], scope: 'userinfo.profile,youtube,plus.profile.emails.read'
РЕДАКТИРОВАТЬ Я также пробовал другие области, такие как userinfo.email или электронная почта.. но все еще не в базе данных.
Я не понимаю, почему это не работает? заранее спасибо