Sha256: f0615413cd9045469cea4dd3dd1997015e5f6552b45e3d09bf8615bd1a10a1df

Contents?: true

Size: 711 Bytes

Versions: 7

Compression:

Stored size: 711 Bytes

Contents

##
# Model for links Tenant and System models
class Anoubis::Tenant::TenantSystem < ApplicationRecord
  self.table_name = 'tenant_systems'

  before_update :before_update_tenant_system

  belongs_to :tenant, class_name: 'Anoubis::Tenant::Tenant'
  validates :tenant, presence: true, uniqueness: { scope: [:system_id] }
  belongs_to :system, class_name: 'Anoubis::Tenant::System'
  validates :system, presence: true, uniqueness: { scope: [:tenant_id] }

  ##
  # Checks before update data in model. Prevents from changing element data
  def before_update_tenant_system
    self.tenant_id = self.tenant_id_was if self.tenant_id_changed?
    self.system_id = self.system_id_was if self.system_id_changed?
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
anoubis-1.0.12 app/models/anoubis/tenant/tenant_system.rb
anoubis-1.0.11 app/models/anoubis/tenant/tenant_system.rb
anoubis-1.0.10 app/models/anoubis/tenant/tenant_system.rb
anoubis-1.0.8 app/models/anoubis/tenant/tenant_system.rb
anoubis-1.0.7 app/models/anoubis/tenant/tenant_system.rb
anoubis-1.0.1 app/models/anoubis/tenant/tenant_system.rb
anoubis-1.0.0 app/models/anoubis/tenant/tenant_system.rb