我对ruby和ror还不熟悉,所以任何指导都会很棒。我有一个功能:

def self.insert_feed_product_scores(id, low, high)
  avgScore = low.to_s + " - " + high.to_s
  @feedProduct = FeedProduct.find(id)
  @feedProduct.avg_score = avgScore
  @feedProduct.save
end

如果由于某种原因找不到我传入的ID,我注意到出现了此错误,那就可以了:
ActiveRecord::RecordNotFound: Couldn't find FeedProduct with id=999999

我可以写一些逻辑,检查是否有得分,在保存之前是否有发现,但这看起来不像是ruby做事情的方式……我应该写逻辑来验证,还是有ruby/ror做事情的方式?
谢谢

最佳答案

如果要跟踪错误消息并正确记录,请遵循@lucapette answer其他

def self.insert_feed_product_scores(id, low, high)
  @feedProduct = FeedProduct.find(id) rescue return false
  @feedProduct.avg_score = "#{low} - #{high}"
  @feedProduct.save
end

10-05 18:16