首页 > 解决方案 > Ruby Rescue 异常未触发

问题描述

Ruby 2.3.7p456 Rails 5.2.2 iMac macOS Mojave v 10.14.3

下面的代码段在@cart = Cart.find(nil)处触发ActiveRecord::RecordNotFound错误,但救援块永远不会触发。

感谢您的帮助,如果还有什么需要我提供的,请告诉我。

 module CurrentCart
  private
  def set_cart
    @cart = Cart.find(nil)
  rescue ActiveRecord::RecordNotFound
    puts 'There was an ActiveRecord::RecordNotFound error'
  end
end

标签: ruby-on-railsrubymacosexception-handlingrescue

解决方案


通过 RBENV 安装不同版本的 Ruby 似乎已经解决了这个问题,我无法告诉你为什么会这样,只是代码可能是为特定版本的 Ruby 设计的。


推荐阅读