identity.rb (638B)
- # frozen_string_literal: true
- # == Schema Information
- #
- # Table name: identities
- #
- # id :integer not null, primary key
- # user_id :integer
- # provider :string default(""), not null
- # uid :string default(""), not null
- # created_at :datetime not null
- # updated_at :datetime not null
- #
- class Identity < ApplicationRecord
- belongs_to :user, dependent: :destroy
- validates :uid, presence: true, uniqueness: { scope: :provider }
- validates :provider, presence: true
- def self.find_for_oauth(auth)
- find_or_create_by(uid: auth.uid, provider: auth.provider)
- end
- end