Spitballing, поэтому синтаксис может быть не идеальным, но вы можете указать это явно, используя список.Предположим, что ваши действительные состояния для перехода к «vacant_pass» из «new», «create» и «closed»:
event :set_vacant_pass do
transitions from: [:new, :created, :closed], to: :vacant_pass
end
Или вы можете использовать охрану
event :set_vacant_pass do
transitions_from: Vacations.man_statuses.keys, to: :vacant_pass, guard: :transition_valid?
end
def transition_valid?
self.state == :vacant_pass
end
Добавлены дополнительные, вы можете использовать
ClassName.aasm.states.map(&:name)
, чтобы получить массив символов, содержащий все возможные состояния для вашего класса.