魔法logging添加对象,不同的上下文错误
我在我的应用程序中使用魔法logging,并希望添加用户的function,添加一个“注”,这是“入门”的孩子。
我添加了这个代码:
[MagicalRecord saveWithBlock: ^(NSManagedObjectContext *localContext) { Note *newNote = [Note MR_createInContext: localContext]; newNote.content = noteContent; newNote.name = @"User Note"; [self.entry addNotesObject: newNote]; } completion: ^(BOOL success, NSError *error) { if (error != nil) { // show alert } else if (success) { [[self tableView] reloadData]; } }];
我一直在最后一行得到的错误是“非法尝试在不同的上下文中的对象之间build立关系”条目“
我尝试将'entry'和'newNote'的上下文设置为'localContext',但是我仍然得到相同的错误。
我错过了什么?
self.entry
是在不同的环境下创build的,所以你不能从这个环境访问它。 代替:
[self.entry addNotesObject: newNote];
你应该先在localContext
findself.entry
对象:
[[self.entry MR_inContext:localContext] addNotesObject: newNote];
您可以在线程上执行核心数据操作,find在并发环境中使用MagicalRecord的解释。 虽然它很短,所以在我看来,即使不直接使用CD,也是值得阅读Core Data Programming Guide的 。
- UITableView内部错误:无法生成一个新的部分地图与旧的部分数:和新的部分数:with userInfo(null)
- 用iCloud集成备份Core Data数据库有没有好的方法?
- NSFetchedResultsController并获得分组的权利
- 核心数据:从多个实体或关系获取结果
- 使用fetchedresultcontroller为每个月设置一个不同的部分
- NSPredicate,获得一个一对多关系的子集的结果
- 如何使用StackMob作为后端获取sm_owner用户对象
- 如何在UITableView的switch语句中创build一个variables?
- 核心数据严重的应用程序错误在controllerDidChangeContent