Вызов функции в конце нескольких функций в рельсах наблюдателя

Итак, я использую гем 'state_machine' в своем приложении для превращения модели Lead в конечный автомат. И я написал много пользовательских методов для переходов в LeadObserver, как показано ниже.

class LeadObserver < ActiveRecord::Observer
  def after_review
  end

  def after_convert
  end

  def after_mark_invalid
  end
end

И есть около 15 таких методов.

Теперь у меня есть метод класса, скажем, Seller.do_something который должен быть вызван в конце всех этих 15 методов. Есть ли элегантный Rails способ назвать это Seller.do_something метод в конце каждого метода, как after_filter для контроллера. Благодарю.:)

1 ответ

Я думаю, что вы можете, но это не здорово использовать.

ActiveModell::Callbacks это то, что вы ищете.

http://api.rubyonrails.org/classes/ActiveModel/Callbacks.html

сама state_machine обеспечивает after_transition - может быть, это тебе помогает?

Другие вопросы по тегам