Module: ActiveVersion::Adapters::Sequel::Versioning

Defined in:
lib/active_version/adapters/sequel/versioning.rb

Overview

Sequel plugin that provides ActiveVersion-style model DSL and lifecycle hooks.

Defined Under Namespace

Modules: ClassMethods, InstanceMethods

Constant Summary collapse

DEFAULT_CONFIG =
{
  revision_model: nil,
  audit_model: nil,
  translation_model: nil,
  foreign_key: nil,
  tracked_columns: [],
  translation_columns: []
}.freeze

Class Method Summary collapse

Class Method Details

.apply(model, **options) ⇒ Object



18
19
20
# File 'lib/active_version/adapters/sequel/versioning.rb', line 18

def self.apply(model, **options)
  configure(model, **options)
end

.configure(model, **options) ⇒ Object



22
23
24
25
# File 'lib/active_version/adapters/sequel/versioning.rb', line 22

def self.configure(model, **options)
  base = model.instance_variable_get(:@active_version_sequel_config) || {}
  model.instance_variable_set(:@active_version_sequel_config, DEFAULT_CONFIG.merge(base).merge(options))
end