Rails4 自作のエラークラスを作成する
システム独自のエラーを出したかったので、自作のエラークラスを作成することにした。
最初はExceptionクラスを継承しようと思っていたが、Exceptionクラスはシステム関連の例外まで含んでいるので、アプリケーションレベルの例外のトップであるStandardErrorクラスを継承したほうがいいようだ。
modelにmy_error.rbを作成し、下記のように記載する。
class MyError < StandardError; end
今回はエラーの名称を変更したかっただけなので、これで終了だが、独自の処理を追加することもできる。
エラーを発生させるときは、下記のように使う。
raise MyError , "データが存在しません"
参考:
Rubyで自前の例外クラスを作るときExceptionではなくStandardErrorを継承する理由 - yarbの日記