rails rescue_fromとは

rescue_fromとは


rescue_fromとはRailsの機能で例外処理をとりまとめて実行できます。
例外の種類を指定し、その実行する処理を記述しておけば1つのコントローラー内で発生するすべての例外処理をキャッチしてくれます。

#ActiveRecord::RecordNotFoundという例外名の場合
#:render_404 というメソッド名を実行
rescue_from ActiveRecord::RecordNotFound,with: :render_404
private
  def :render_404
     #例外発生の際実行する処理   
   end


複数指定する場合、一番下のrescue_fromが優先される


rescuefrom ActiveRecord::RecordNotFound, with: :render404  
rescue_from ActionController::RoutingError, with: :render_404 #こっちが優先



よくあるエラーメッセージ


ActiveRecord::RecordNotFound

データベースからデータを取得する際に、データが存在しなかった時発生するエラー

ActiveRecord::RoutingError

ルーティングが見つからない時に発生するエラー