ruby-on-rails – 我每次在Rails 3上获得异常时都可以执行一个方法吗?

ruby-on-rails – 我每次在Rails 3上获得异常时都可以执行一个方法吗?,第1张

概述我几乎尝试了网上的所有内容,我想要的只是在出现“ActiveRecord :: RecordNotFound”或“No route matches”这样的异常时调用方法. ApplicationController的救援工作不起作用,但为什么呢? class ApplicationController < ActionController::Base protect_from_forgery @H_419_2@ 我几乎尝试了网上的所有内容,我想要的只是在出现“ActiveRecord :: RecordNotFound”或“No route matches”这样的异常时调用方法.

ApplicationController的救援工作不起作用,但为什么呢?

class ApplicationController < ActionController::Base  protect_from_forgery  private    def self.send_report_error(message)      NotifIEr.page_failure(message).deliver    endrescue ActiveRecord::RecordNotFound  # handle not found error  send_report_error ActiveRecord::RecordNotFound.to_srescue ActiveRecord::ActiveRecordError  # handle other ActiveRecord errors  send_report_error ActiveRecord::ActiveRecordError.to_srescue # StandardError  # handle most other errors  send_report_error "common error"rescue Exception  # handle everything else  send_report_error "common exception"end
解决方法 使用rescue_from.例如:

class ApplicationController < ActionController::Base  rescue_from ActiveRecord::RecordNotFound,:with => :send_report_errorend

http://api.rubyonrails.org/classes/ActiveSupport/Rescuable/ClassMethods.html

@H_419_2@ 总结

以上是内存溢出为你收集整理的ruby-on-rails – 我每次在Rails 3上获得异常时都可以执行一个方法吗?全部内容,希望文章能够帮你解决ruby-on-rails – 我每次在Rails 3上获得异常时都可以执行一个方法吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1247640.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存