Parent
有許多children
,我想用parent.update(children: children)
到(散裝)插入孩子,像這樣如何避免引發異常,當嵌套屬性未能挽救
parent = Parent.find(id)
if parent.update(children: children)
# render OK
else
# render Error
end
Child
由validates_uniqueness_of :parent_id, scope: :number
驗證,它也有約束UNIQUE (parent_id, number)
。
我想parent.update(children: children)
返回false
當children
有一些重複的鍵。但它引起了ActiveRecord::RecordNotSaved
的異常,而parent
的errors
字段與Couldn't save Parent
。
我很遺憾地使用begin rescue
來捕捉這個錯誤。
有什麼辦法可以避免引發異常,在這種情況下parent.update
返回false
?