必须先在项目中要加入plugin
?
exception_notifier(附件就是)
?
然后
首先在development.rb文件中加入
ActionMailer::Base.delivery_method = :smtp ActionMailer::Base.smtp_settings = { :address => "smtp.a-it.jp", :domain => "smtp.a-it.jp", :port => 25, :authentication => :login, :user_name => "rails", :password => "rails", }
?然后在environment.rb中加入
ActionView::Base.field_error_proc = Proc.new {|html_tag, instance| %(<span class="field-with-errors">#{html_tag}</span>)} #ActiveSupport::CoreExtensions::Time::Conversions::DATE_FORMATS.update( :default => '%Y-%m-%d %H:%M:%S' ) #邮件发送地址 ExceptionNotifier.sender_address = %("Application Error<error_sender>) #邮件前缀 ExceptionNotifier.email_prefix = "[email title]" #邮件接收者 ExceptionNotifier.exception_recipients = %w(youremails)?
再在application_controller.rb中加入
rescue_from Exception do |exception| pp exception case exception when "ActionController::NameError" flash[:error] = exception.message.to_s when "ActiveRecord::RecordNotFound" flash[:error] = exception.message.to_s when "ActionController::UnknownAction" flash[:error] = exception.message.to_s.split(".")[0] rescue "No action responded to #{params[:action]}" else return rescue_action_in_public(exception) end redirect_to :controller => 'blog', :action => "list" end
?哈哈,这样就大功告成了!!!