Module: ActsAsPositioned::ClassMethods

Defined in:
lib/acts_as_positioned.rb

Overview

Class methods that will be added to the base class (the class mixing in this module).

Instance Method Summary collapse

Instance Method Details

#acts_as_positioned(options = {}) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/acts_as_positioned.rb', line 9

def acts_as_positioned(options = {})
  column = options[:column] || :position
  scope_columns = Array.wrap(options[:scope])

  after_validation do
    acts_as_positioned_validation(column, scope_columns)
  end

  before_create do
    acts_as_positioned_create(column, scope_columns)
  end

  before_destroy do
    acts_as_positioned_destroy(column, scope_columns)
  end

  before_update do
    acts_as_positioned_update(column, scope_columns)
  end
end