我是Ruby和Ror的新手,所以任何指導都會很棒。我有一個函數:Ruby方式做失敗的數據庫保存
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的做法事情呢?
感謝
試試嗎?http://api.rubyonrails.org/classes/Object.html#method-i-try – 2012-02-01 10:11:37
這是一個FeedProduct的類方法嗎?你說可以舉例外嗎?然後使用find是好的。 – tokland 2012-02-01 10:41:04