首页 > 解决方案 > Rails 救援特定错误并发送到滚动条

问题描述

在我的调用方法中,我想使所有优惠过期,但为此,我捕获了两个特定错误(验证和可能的 AASM)并从中拯救。两者都应该发送到 Rollbar。

def call
  all_to_expire.each do |offer|
    offer.expire!(actor: self)
  rescue StandardError => e
    Rollbar.error(e)
  end
end

上面的方法似乎不起作用

标签: ruby-on-railsrubyrollbar

解决方案


我不确定 Ruby 是否理解这种块结构。我会将其重写为:

def call
  all_to_expire.each do |offer|
    begin
      offer.expire!(actor: self)
    rescue AASM::InvalidTransition, ActiveModel::ValidationError => e
      Rollbar.error(e)
    end
  end
end

推荐阅读