Как я могу получить доступ к старым и новым состояниям в обратном вызове AASM в рельсах? - PullRequest
0 голосов
/ 22 декабря 2011

Я новичок в Ruby и Rails.

Я использую AASM для помещения поведения конечного автомата в класс модели. В зависимости от старого и нового состояний я хочу обрабатывать событие изменения состояния по-разному.

Как мне вызвать обратный вызов «after» с состояниями «to» и «from» в качестве аргументов или получить доступ к внутренним полям, хранящимся в AASM, если они имеют то, что мне нужно? ... или мне просто нужно добавить обратные вызовы до и после и сохранить предыдущее состояние в обратном вызове до?

1 Ответ

0 голосов
/ 22 декабря 2011

Вы можете получить доступ к ModelClass.aasm_state ()

Если у вас разные переходы для разных состояний.

Aasm довольно хорошо документирован.Вы можете найти инструкции в README для aasm: https://github.com/rubyist/aasm

state :dating,   :enter => :make_happy,        :exit => :make_depressed

def make_happy
  # do something
end

...
...