我有這樣的代碼:如何避免的ActiveRecord :: RecordNotFound例外查詢多個記錄時
Article.find([1,2,3])
但只記錄和存在於數據庫中。我得到這個例外:
"ActiveRecord::RecordNotFound (Couldn't find all Offers with IDs (1,2,3) (found 2 results, but was looking for 3))"
有沒有辦法只得到現有的記錄,而不是例外?
我有這樣的代碼:如何避免的ActiveRecord :: RecordNotFound例外查詢多個記錄時
Article.find([1,2,3])
但只記錄和存在於數據庫中。我得到這個例外:
"ActiveRecord::RecordNotFound (Couldn't find all Offers with IDs (1,2,3) (found 2 results, but was looking for 3))"
有沒有辦法只得到現有的記錄,而不是例外?
Article.find_all_by_id([1,2,3])
是要走的路!
問題是,使用find與id會在記錄丟失時引發異常。你可以嘗試像
Article.all :conditions => ["id in (?)", [1,2,3]]
使用
find :all
失蹤記錄不會引發錯誤
或更簡潔
Article.find_all_by_id [1,2,3]
,所以即使記錄丟失你很酷。
或'Article.find_by_id(1)'如果你只是在尋找一個 – brittohalloran 2011-11-06 06:26:12
這個現在已過時,見 – Mike 2015-11-30 23:49:53