Module: Cell::Tenant

Defined in:
lib/cell/tenant.rb

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.append_features(cls) ⇒ Object



34
35
36
# File 'lib/cell/tenant.rb', line 34

def self.append_features(cls)
  cls.prepend(self)
end

.extend_object(cls) ⇒ Object



38
39
40
# File 'lib/cell/tenant.rb', line 38

def self.extend_object(cls)
  cls.prepend(self)
end

.prepended(model) ⇒ Object



42
43
44
45
46
47
48
49
# File 'lib/cell/tenant.rb', line 42

def self.prepended(model)
  Cell.assign_model(model)

  model.extend(ClassMethods)
  model.prepend(::Cell::Schema)
  model.prepend(::Cell::Context)
  model.prepend(::Cell::UrlOptions)
end

Instance Method Details

#cell_idObject



21
22
23
# File 'lib/cell/tenant.rb', line 21

def cell_id
  send(self.class.cell_id_column)
end

#cell_id_change_setObject



29
30
31
32
# File 'lib/cell/tenant.rb', line 29

def cell_id_change_set
  fail "cell_id was not changed" unless cell_id_changed?
  previous_changes[self.class.cell_id_column]
end

#cell_id_changed?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/cell/tenant.rb', line 25

def cell_id_changed?
  !! previous_changes[self.class.cell_id_column]
end