我有一个tap
,当我保存NSManagedObject
时,如果验证失败,我想删除自己,而不是仅仅停止保存并抛出错误。这样我的保存可以继续成功。
我只是喜欢在保存期间发生这种情况。我不确定NSManagedObjectContext
是否适合这样做。是否有一个公认的惯例如何做到这一点?
答案 0 :(得分:3)
首先,您最好在UI或网络层验证数据,而不是依靠持久层来进行验证。这将完全避免这个问题。
话虽如此,您可以在调用save之前运行-validateForUpdate
和-validateForInsert
以确保对象有效。
您也可以触发错误,然后展开错误以找出哪些对象无效,删除它们然后重新保存。
与在保存(UI或网络层)之前正确验证数据相比,这两种解决方案都是草率的。