浏览 4960 次
锁定老帖子 主题:如何在你的应用中管理错误的页面
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2006-11-14
1、设置全局的异常处理程序,在application.rb中增加: def rescue_action_in_public(exception) logger.error("rescue_action_in_public executed") case exception when ActiveRecord::RecordNotFound, ::ActionController::RoutingError, ::ActionController::UnknownAction logger.error("404 displayed") render(:file => "#{RAILS_ROOT}/public/404.html", :status => "404 Not Found") else logger.error("500 displayed") render(:file => "#{RAILS_ROOT}/public/500.html", :status => "500 Error") # SystemNotifier.deliver_exception_notification(self, request, # exception) end end 2、Controller级别的异常处理,可以在你自己的Controller里面增加: def rescue_action_in_public(exception) render :text => "<html><body> <p>There was a controller specfic error processing your request.</p> <!-- #{exception} --></body></html>" end 3、注意在不同环境中的配置,生产环境中,默认的配置应该就可以显示效果,但在开发模式下,需要确认/config/environments/development.rb中的 config.action_controller.consider_all_requests_local = false 如果在本机访问必须增加: def local_request? false end才能显示错误页面 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-04-05
|
|
返回顶楼 | |