Rails抢救特定错误并发送到滚动条

时间:2019-06-04 12:25:28

标签: ruby-on-rails ruby rollbar

在我的通话方法中,我想使所有报价过期,但是要这样做,我发现了两个特定的错误(验证和可能的AASM)并从中恢复。两者都应发送到Rollbar。

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

上述方法似乎无效

1 个答案:

答案 0 :(得分:2)

我不确定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