Sha256: 2b2c65960d001289ba672cbaf427c799fcd080528c29da1f249612f8f7807967

Contents?: true

Size: 719 Bytes

Versions: 1

Compression:

Stored size: 719 Bytes

Contents

# Identificating 是身份关联,存储身份(identity)和访问者(visitor)之间的关联关系。

class Unidom::Visitor::Identificating < ActiveRecord::Base

  self.table_name = 'unidom_identificatings'

  belongs_to :identity, polymorphic: true
  belongs_to :visitor,  polymorphic: true

  scope :identity_is, ->(identity) { where identity: identity }
  scope :visitor_is,  ->(visitor)  { where visitor:  visitor  }

  include ::Unidom::Common::Concerns::ModelExtension

  def self.find_identity(visitor)
    visitor_is(visitor).first.try :identity
  end

  def self.identificate(visitor, identity)
    self.visitor_is(visitor).identity_is(identity).valid_at.alive.first_or_create opened_at: Time.now
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
unidom-visitor-0.1 app/models/unidom/visitor/identificating.rb