0

Gem AASM 支持4.3 或更高版本的每个类的多个状态机。一个唯一的状态机选择器用于一个类中的每个状态机。一个状态可以出现在多个状态机中吗?

这是一个例子。状态walking出现在:move:work中。state walking没事吧?或者我必须以不同的方式命名,例如:state walking_movestate waling_work

class SimpleMultipleExample
  include AASM
  aasm(:move) do
    state :standing, :initial => true
    state :walking  #<====

    event :walk do
      transitions :from => :standing, :to => :walking
    end
  end

  aasm(:work) do
    state :sleeping, :initial => true
    state :walking  #<====

    event :start do
      transitions :from => :sleeping, :to => :walking
    end
  end
end

所有初始状态也可以相同,例如initial_state在不同的状态机中吗?

4

0 回答 0