2011-02-06 3 views
23

Я использую AASM. Возможно ли переход от любого государства? Например:AASM: Переходы из любого штата?

aasm_event :publish do 
    transitions :to => :publish, :from => ANY_STATE 
end 

Я знаю, что можно передать массив государств :from, но это не то, что я после. Я пробовал полностью исключить :from, но это не сработало.

ответ

53

AASM теперь поддерживает переходы без from указанного, что позволит переходить из любого состояния.

aasm_event :publish do 
    transitions to: :publish # from ANY 
end 

(бахвальства: Я добавил эту функцию, потому что это было нужно)

+4

Спасибо, что добавили эту функцию в кодовую базу. Все версии AASM> = 3.0.10 включают это сейчас. – alto

5

Вы можете получить состояния через метод класса aasm_states, если они уже определены ранее в коде.

aasm_event :publish do 
    transitions :to => :publish, :from => aasm_states.map(&:name) 
end 
+0

совершенны, спасибо. – gjb

+4

Thx за ответ, но чувствует хак-иш. AASM должен поддерживать: все или: любое. – pschang

 Смежные вопросы

  • Нет связанных вопросов^_^