Rubyのrescueは子メソッド内のエラーも拾ってくれる
Ruby(Rails)の例外処理としてrescueがあります
よくあるのはこんな感じのです
def index
1/0
rescue
p "例外だよ〜"
end
【実行結果】
> “例外だよ〜"
まー、これはわかりますよね
ところで、以下のようにindex内で呼び出すメソッド内でエラーが発生した場合はどうなるのでしょうか?
def index
hoge
rescue
p "例外だよ〜"
end
def hoge
1/0
end
【実行結果】
> “例外だよ〜"
結果から言うと、この場合でもちゃんとhogeメソッド内のエラーを拾って処理してくれます
では、この場合は?
def index
hoge
rescue
p "例外だよ〜"
end
def hoge
1/0
rescue
p "hogeの例外だよ〜"
end
【実行結果】
> “hogeの例外だよ〜"
hogeメソッド内のrescueで拾われるので、indexメソッド内のrescueには入りません
ディスカッション
コメント一覧
まだ、コメントがありません
よくLoadingされてるDocs
新たにPostされたDocs
: スマホ
楽天モバイルがおすすめできない人の特徴とは?
楽天モバイルの最強プランをおすすめできない人の特徴を簡単にまとめてみました また ...: システム開発
なぜスクラムがつらいのか?開発現場が疲弊するのか?スクラムに対する違和感と共に原因を考えてみた
今ではどこの開発現場に行っても、やれスクラムスクラムと、まるでスクラムでもやって ...: Laravel
1つのテーブルを複数のテーブルと結合したい【Laravel10】
1つのテーブルを2つの異なるテーブルに対して結合したいケースがあったのでLara ...: Laravel
Laravelで複数画像アップロード時のvalidateを指定【Laravel10】
jQuery - Image Uploaderを使って、フォームから複数の画像を ...: Laravel
Laravel Breezeのユーザ削除機能を物理削除から論理削除に変更する【Laravel10】
Laravel Breezeでは、ユーザが自分でアカウントを削除できる機能があり ...HashMap
created_by
はやぴ
Web/アプリ開発エンジニア
Sierにてお堅いB向けのソフトウェア開発を経て、現在はC向けのWebやアプリを中心に開発しています。
Utilities