我想提出一个异常,这样它就可以做与普通Rails异常相同的事情.特别是,在开发模式下显示异常和堆栈跟踪,在生产模式下显示"我们很抱歉,但出了问题"页面.

我try 了以下方法:

raise "safety_care group missing!" if group.nil?

但它只是给发展写了"ERROR signing up, group missing!"封信.日志(log)文件

推荐答案

你不需要做任何特别的事情,它应该是有效的.

当我有一个新的rails应用程序和这个控制器时:

class FooController < ApplicationController
  def index
    raise "error"
  end
end

http://127.0.0.1:3000/foo/

我看到了一个堆栈跟踪异常.

您可能在控制台日志(log)中看不到整个stacktrace,因为Rails(从2.3开始)是filters lines from the stack trace that come from the framework itself.

请参见Rails项目中的config/initializers/backtrace_silencers.rb

Ruby-on-rails相关问答推荐

Ruby线程使用互斥处理并发问题

HTTP:MimeNegotiation::InvalidType(html不是有效的MIME类型):""

参数数量错误(给定1个,预期为0个;必需关键字:IO、文件名)-活动存储

使用带有 Paper Trail gem 的子类

多行与内联块之间的不同行为

如何创建一个融合了另外两个记录的 FactoryBot 工厂?

Ruby on Rails 7 与 React 集成

无法在生产服务器上启动 Rails 4 控制台

Rails 3 应用程序的 MySQL 集群 (NDB) 与 MySQL 复制 (InnoDB):优点/缺点?

2个空格或1个制表符,Rails社区的缩进标准是什么?

如何避免 has_many :through 关系中的重复?

从子类中的重载方法调用基类方法

了解 Rails 验证:allow_blank 有什么作用?

在 Rails 中将 DateTime 字符串转换为 UTC

关闭 Firefox 中文本字段的自动完成功能

Elastic Beanstalk Ruby/Rails 需要安装 git,所以 bundle install 可以工作.. 但不是

参数错误:范围主体需要可调用

rails 单数资源还是复数?

Rails:为什么 with_exclusive_scope 受保护?关于如何使用它的任何好的做法?

测试和规格有什么区别?