Module: Statesman::Adapters::ActiveRecordModel::ClassMethods

Defined in:
lib/statesman/adapters/active_record_model.rb

Instance Method Summary collapse

Instance Method Details

#in_state(*states) ⇒ Object



9
10
11
12
13
14
# File 'lib/statesman/adapters/active_record_model.rb', line 9

def in_state(*states)
  joins(transition_name)
    .joins(transition_join)
    .where("#{transition_name}.to_state" => states.map(&:to_s))
    .where("transition2.id" => nil)
end

#not_in_state(*states) ⇒ Object



16
17
18
19
20
21
# File 'lib/statesman/adapters/active_record_model.rb', line 16

def not_in_state(*states)
  joins(transition_name)
    .joins(transition_join)
    .where("#{transition_name}.to_state NOT IN (?)", states.map(&:to_s))
    .where("transition2.id" => nil)
end