`

如何在你的应用中管理错误的页面

    博客分类:
  • ROR
阅读更多
Rails在不同的环境下,对错误的处理是不一样的,在开发和测试环境中提供开发级别的错误,在生产环境中提供Application Error的错误。
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
才能显示错误页面
分享到:
评论
1 楼 resin 2007-04-05  

相关推荐

    RecyclerView实现支付宝应用管理页面

    在"RecyclerView实现支付宝应用管理页面"这个项目中,我们将深入理解如何利用RecyclerView来创建一个类似支付宝应用中心的界面,让用户能够方便地浏览和管理各种应用。 首先,RecyclerView的核心是ViewHolder模式,...

    自定义404简洁错误页面.zip

    在互联网世界中,当用户尝试访问一个不存在的网页时,服务器通常会返回一个404错误页面,提示用户请求的资源未找到。本教程将详细讲解如何创建并自定义一个简洁且具有专业感的404错误页面,以及如何将其应用到IIS...

    当输入错误页面会跳到指定的错误页面,并显示错误原因

    在IT行业中,构建一个能够处理错误并提供友好用户体验的Web应用程序是至关重要的。"当输入错误页面会跳到指定的错误页面,并显示错误原因"这一主题涉及到的是Web应用的异常处理和用户界面设计。让我们详细探讨一下这...

    页面管理.zip

    在IT行业中,页面管理和定时任务是两个非常关键的领域,特别是在服务器端的自动化运维和Web应用的优化上。下面将详细解析这两个概念及其关联性。 首先,我们来谈谈"页面管理"。在Web开发中,页面管理通常指的是对...

    C#错误页面导向模板下载

    在下载的压缩包中,你可能会找到多种不同类型的错误页面模板,比如403(禁止访问)、404(找不到页面)、500(服务器内部错误)等。每个模板都是一个完整的ASP.NET页面文件,包含了HTML、CSS、JavaScript以及C#后台...

    后台管理系统模版(jsp页面版)

    【后台管理系统模版(jsp页面版)】是一个基于JAVA技术的Web应用,主要设计用于后台管理功能。这个模板使用了JSP(JavaServer Pages)作为动态网页开发技术,它允许开发者将HTML、CSS和Java代码结合在一起,实现...

    404错误页面漂亮模板下载(内有13套

    本资源提供了13套不同风格的404错误页面模板,帮助网站管理员或设计师快速创建出吸引人的错误提示页面。 首先,我们要理解404错误页面的基本作用。当用户点击了无效链接或者输入了错误的URL时,服务器会返回404状态...

    管理系统 jsp 页面模板 (干净实用) 有js

    【标题】:“管理系统 jsp 页面模板 (干净实用) 有...在实际应用中,开发者可以基于这个模板快速搭建后台管理系统,节省开发时间和成本。同时,由于其具有良好的设计和验证功能,可以提高项目的质量和用户的满意度。

    后台管理系统静态页面.zip下载

    在后台管理系统中,JS文件通常用于实现页面的动态效果、用户交互、数据验证以及与服务器的异步通信(AJAX)。例如,通过JavaScript,用户可以在不刷新整个页面的情况下更新部分内容,提高用户体验。此外,JavaScript...

    编写程序实现虚拟存储管理中OPT,FIFO,LRU页面置换算法

    根据给定文件的信息,我们可以详细地探讨一下在虚拟存储管理中如何实现三种主要的页面置换算法:Optimal (OPT), First-In First-Out (FIFO), 和 Least Recently Used (LRU)。此外,我们还会简要提及Clock置换算法,...

    vue+elementUI管理系统,页面源代码

    2. **router** - 路由模块,使用Vue Router管理页面间的跳转。在这里定义路由规则,配置动态路由和守卫功能,实现单页应用的页面切换。 3. **components** - 存放自定义的Vue组件,每个组件都是一个独立的可复用的...

    几个后台管理页面模板(html)

    在这个场景中,"后台管理页面模板"是指用于快速构建后台管理界面的预设布局和设计元素。 【描述】中提到的重复内容强调了这是一个关于后台管理界面的HTML模板集合。这意味着这些模板通常包含了一系列预设计的页面,...

    Android构建一个通用的WebView(二):自定义的错误页面、缓存数据,离线浏览

    为了在用户离线时自动加载缓存的页面,我们还需要重写`onReceivedSslError()`方法,接受所有SSL证书(这一步仅用于演示,实际应用中需谨慎处理): ```java webView.setWebViewClient(new WebViewClient() { ... ...

    PDF Ebook Reader App 电子书阅读器应用+管理应用v1.0 安卓java项目源码

    离线图书阅读收藏列表页面简历书签图书下载捕获图书页面截图夜间模式阅读搜索栏图书类别 关键特征 离线图书阅读 ...您可以从管理应用程序中删除类别和书籍 您可以从管理员应用程序更新类别和书籍

    html通用的后台管理页面

    在后台管理页面中,HTML用于构建基本的元素框架,如头部、导航栏、侧边栏、内容区域和页脚等。同时,HTML5引入了更多的语义化标签,如、、和,这些标签有助于提高页面的可读性和可访问性。 HTM和HTML本质上是相同的...

    漂亮的后台登陆界面管理页面源码html+js

    "漂亮的后台登陆界面管理页面源码html+js"是这样一个资源集合,它包含了多个设计精美的登录界面和管理页面的HTML与JavaScript源代码,旨在帮助开发者快速地整合到多种后端开发框架中,如ASP.NET (C#)、ASP、PHP和JSP...

    IIS自定义错误文件

    在IIS中,自定义错误页面是一项重要的功能,它允许管理员根据自己的需求定制当用户遇到错误时所看到的页面内容,从而提供更加友好且符合品牌形象的用户体验。 自定义IIS错误文件的主要目的是在用户遇到404 Not ...

    vue将单页面改造成多页面应用的方法

    项目分为了管理平台和用户查看页面,用户查看页面是很简单的页面,但是在加载过程中,却加载了整个应用的打包代码,量重且影响了响应和体验。我想要的效果是,查看页面只加载查看页面的代码,不包含管理系统的代码,...

    Ajax在题库管理和在线考试系统中的应用

    Ajax(异步JavaScript和XML)技术在现代网页应用中扮演着重要的角色,特别是在题库管理和在线考试系统的构建中。Ajax的核心在于提供了一种无需整个页面刷新就能与服务器进行交互的方式,极大地提升了用户体验。 ...

    Delph插件窗体Dll和mdi,实现Tabcontrol多页面管理

    在IT行业中,开发人员经常需要创建可扩展和模块化的应用程序,这时插件系统就显得尤为重要。...在实际开发中,还需要考虑诸如错误处理、版本兼容性、资源管理等更多细节,以确保插件系统的稳定性和可靠性。

Global site tag (gtag.js) - Google Analytics