gpt4 book ai didi

ruby-on-rails - 通过 ResourceNotFound 继续循环?

转载 作者:太空宇宙 更新时间:2023-11-03 18:25:28 24 4
gpt4 key购买 nike

我正在循环访问一组用户,作为其中的一部分,我正在调用第三方 API(通过 Intercom API Ruby wrapper)。

如果找不到用户,Intercom API 将抛出一个 Intercom::ResourceNotFound,并停止整个过程。

我只是希望它在找不到它时跳过用户。

User.each do |user|
user = Intercom::User.find_by_email(user.email) # Intercom::ResourceNotFound thrown if not found
user.custom_data["Example"] = true
user.save
end

这是 Intercom Ruby 包装器的问题吗?或者是否有典型的 Ruby 或 Rails 方法来处理这类事情?

最佳答案

捕获异常怎么样?

User.each do |user|
begin
user = Intercom::User.find_by_email(user.email) # Intercom::ResourceNotFound thrown if not found
user.custom_data["Example"] = true
user.save
rescue Intercom::ResourceNotFound
end
end

因为您只想在找不到用户(并抛出异常)时跳过,所以在rescue 之后没有错误处理代码。但是如果你想放一些调试信息或类似的东西,你可以写:

  rescue Intercom::Resource
puts %{Could not work on user...}
end

关于ruby-on-rails - 通过 ResourceNotFound 继续循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11882459/

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