| 
									
										
										
										
											2018-02-04 04:42:13 +00:00
										 |  |  | # frozen_string_literal: true | 
					
						
							|  |  |  | # == Schema Information | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # Table name: identities | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | #  provider   :string           default(""), not null | 
					
						
							|  |  |  | #  uid        :string           default(""), not null | 
					
						
							|  |  |  | #  created_at :datetime         not null | 
					
						
							|  |  |  | #  updated_at :datetime         not null | 
					
						
							| 
									
										
										
										
											2018-11-27 12:56:25 +00:00
										 |  |  | #  id         :bigint(8)        not null, primary key | 
					
						
							|  |  |  | #  user_id    :bigint(8) | 
					
						
							| 
									
										
										
										
											2018-02-04 04:42:13 +00:00
										 |  |  | # | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 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 |