gpt4 book ai didi

ruby-on-rails - Rails rescue_from 停止执行流程

转载 作者:数据小太阳 更新时间:2023-10-29 07:52:29 28 4
gpt4 key购买 nike

我在使用 rescue_from 时遇到问题

class SimpleError < StandardError; end

before_action :raise_exception
rescue_from SimpleError, with: :rescue_exception

def raise_exception
raise SimpleError
end

def rescue_exception
log $!
end

def index
@unreachable_code = true
def

如您所见,在这段代码中,我只是在操作开始之前引发了一个异常,该异常被 rescue_exception 方法捕获。问题是,在我捕捉到异常之后,应用程序流停止并且永远不会到达操作代码。异常解救后是否可以继续执行?

最佳答案

简短的回答,没有。 rescue_from 旨在处理未捕获的异常。

如果您想为 Controller 中的每个操作捕获特定异常,我建议使用 around_action .

class MyController < ApplicationController
class SimpleError < StandardError; end

around_action :handle_simple_errors

def index
# code that might raise SimpleError
@unreachable_code = true
def

private

def handle_simple_errors
begin
yield
rescue SimpleError
# handle SimpleError however
end
end
end

关于ruby-on-rails - Rails rescue_from 停止执行流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28856035/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com