Module: Sequential::SequentialInclude::ClassMethods
- Defined in:
- lib/sequential/sequential_include.rb
Instance Method Summary collapse
-
#sequential(options = {}) ⇒ Object
Public: Defines ActiveRecord callbacks to set a sequential ID scoped on a specific class.
Instance Method Details
#sequential(options = {}) ⇒ Object
Public: Defines ActiveRecord callbacks to set a sequential ID scoped on a specific class.
options - The Hash of options for configuration:
:scope - The Symbol representing the columm on which the
sequence should be scoped (default: nil)
:column - The Symbol representing the column that stores the
sequence (default: :sequential_id)
:start_at - The Integer value at which the sequence should
start (default: 1)
:skip - Skips the sequence generation when the lambda
expression evaluates to nil. Gets passed the
model object
Examples
class Answer < ActiveRecord::Base
belongs_to :question
sequential scope: :question_id
end
Returns nothing.
33 34 35 36 37 38 39 40 41 |
# File 'lib/sequential/sequential_include.rb', line 33 def sequential( = {}) cattr_accessor :sequence_options (self. ||= []) << before_create :set_sequential_values include Sequential::SequentialInclude::InstanceMethods end |