4
A
答えて
12
例外処理は、Railsの一部ではなく、Railsの一部であるため、Railsアプリケーションのどこでも実行できます。あなただけのようにそれを包む、エラーをキャッチしたい場所:
begin
SomethingElse.doSomething(x, y)
rescue Exception
ErrorLogger.log(Time.now, "Something went wrong!")
end
をあなたは常に「レスキュー例外」はずの代わりに、単に「救出」ことに注意してください。 "レスキュー"を使用するだけで、ExceptionのサブクラスであるStandardErrorがキャッチされます(あなたが通過したくないものを意味するものを意味する)。
またいつものように、あなたが実行してに例外を発生させることができます:あなたのコード内
raise ArgumentError, "Illegal arguments!"
どこでも、それはモデルやコントローラです。
1
私が間違っていない限り、あなたはRubyのどこでもエラー処理を使用できます。あなたは何をしようとしているのですか?
関連する問題
- 1. AbstractController :: Rails 5のActionNotFound例外から救助する方法は?
- 2. メニューバーの救済
- 3. Rubyで例外が救済されている場所を特定する方法は?
- 4. 中央の例外とDRYを救う方法は?
- 5. Psych Yamlの例外を救う方法は?
- 6. RubyがMyExceptionを除くすべての例外を救済します
- 7. Ruby on RailsアプリケーションでOAuth :: Unauthorized例外を救う方法は?
- 8. RSpec - テストを救済して再試行する方法は?
- 9. レールで特定の例外を救う方法
- 10. モデルまたはコントローラでネットワーク接続エラーを救済するには?
- 11. NULLポインタへの救済
- 12. BMCの救済ARドライバクラッシュpowershell
- 13. 「ModuleConcatenation救済:モジュールはECMAScriptモジュールではない」救済措置のメッセージでモジュールを修正するには?
- 14. RoR:保存時にDB例外を救う正しい方法は?
- 15. ASP.NET MVC - コントローラコンストラクタの要求を救済するには?または処理されていない例外のビューを選択する方法
- 16. 欠落しているパラメータが原因で発生した例外は救済されるべきですか?
- 17. チェック済み例外
- 18. カートシピの影付きの救済
- 19. Zend Frameworkで私自身のモデル例外をキャッチする方法
- 20. モデルから学生を救うには?
- 21. Webpack v3 ModuleConcatenationPluginの救済措置の意味は何ですか?
- 22. アンドロイドで例外メモリ例外を処理する方法は?
- 23. アイドル状態の10分ごとに、管理者がRelogin管理パネルを救済する方法は?
- 24. accepts_nested_attributes_for&:reject_if。親協会が救済するまでの拒否を防ぐ方法は?
- 25. Ruby用のLoadErrorを救済する代替手段はありますか?
- 26. 例外をキャッチして別の例外をスローする方法
- 27. 0x8007000B例外をデバッグする方法は?
- 28. 特定の名前空間ですべての例外を救済するにはどうすればよいですか?
- 29. Android MultiDex:すべての時間の救済が不可欠
- 30. H2 JDBC準備済みステートメント例外
小規模の訂正:2番目のコードスニペットに2倍の「raise」があります。しかし、良い答え。 – Shadwell
これは構文エラーでも倍増でもありません。こちらをご覧ください:http://web.njit.edu/all_topics/Prog_Lang_Docs/html/ruby/syntax.html#raise –
一般的に私は同意しますが、私は最初のコードブロックに同意しません。 「レスキュー例外」は、プロセスを強制終了しようとする信号まで救済するため、直接使用しないでください。あなたがコードのその部分をきれいに殺されないようにしたいと本当に確信しているのでなければ、Rubyが正当な理由で持っているデフォルトの動作に固執してください。 したがって、バニラの "レスキュー"を使用し、カスタムエラークラスをStandardErrorから派生させる方が一般的には良い方法です。 – nertzy