假设我使用coreData在数据库中插入了几个实体。我没救。如果我没有对它们的引用,如何删除未保存的所有插入实体?
好的,我怎么看,[context rollback]
context.undoManages
时我无法使用nil
?那很糟。
但在[context reset]
之后,我应该如何处理我的所有引用和对象?如果我的界面用于数据源,会发生什么?我崩溃了吗?
答案 0 :(得分:2)
这是CoreData's
NSManagedObjectContext
课程的目的。它允许您在“暂存器”中执行更改,该“暂存器”特定于您选择的任何目的。如果您愿意,可以[context save]
。或者如果你决定扔东西......
[context rollback];
答案 1 :(得分:1)
[managedObjectContext rollback]
将还原所有未保存的更改。
答案 2 :(得分:1)
如果您使用父/子NSManagedObjectContext,那么您可以创建NSManagedObjectContext的新实例并重新分配其父实例。
如果不这样做,则可以使用实例方法重置:
<强>文档强>: 重置
将接收器返回其基本状态。
- (void)reset
所有接收方的托管对象都被“遗忘”。如果您使用此方法,则应确保您也放弃对使用接收方获取的任何托管对象的引用,因为它们之后将无效。