0

以下は、いくつかの sudo コードです。

例外.rb

module Exceptions
  class CriticalError < StandardError
    # Question: How do I attach a callback to this error? Whenever this error is raised, I also want it to ping_me() as a after callback
    def ping_me()
      ...
    end
  end
end

望ましい結果:

raise Exceptions::CriticalError # after a callback to this error being raised, it will run the ping_me() method

質問:

レールでこれを行うにはどうすればよいですか? メソッドを見ましたrescue_fromが、それはコントローラー内でのみ使用できると思います

どうもありがとうございました!

4

1 に答える 1

0

わかりました、私はこれを理解しました

module Exceptions
  class CriticalError < StandardError
    def initialize(error_message)
      ping_me()
      super(error_message)
    end

    def ping_me()
      ....
    end
  end
end


raise Exceptions::CriticalError.new("something went wrong!")
于 2013-11-06T20:37:15.903 に答える