IOS/Objective-C/CoreData:以一对多关系编辑NSSet

Posted

技术标签:

【中文标题】IOS/Objective-C/CoreData:以一对多关系编辑NSSet【英文标题】:IOS/Objective-C/CoreData: Editing NSSet in One-to-many relationship 【发布时间】:2017-06-30 13:32:21 【问题描述】:

我有一个实体作者和另一个实体书籍,其中作者与书籍之间存在一对多的关系。因此,在与作者的关系中,我将这些书籍表示为NSSet。如果我想为作者删除或添加书籍,Core Data 是否足够聪明,我只需为作者更改书籍的 nsset?还是我需要专门删除或添加书籍实体中的书籍?

换句话说,以下内容足以为作者换书吗?

NSSet *bookSet = _author.books;
NSMutableSet *mutableBookSet = [NSMutableSet setWithSet:bookSet];
[mutableBookSet removeObject:bookToRemove];
newBookSet = mutableBookSet; 
_author.books = newBookSet;

或者我需要从书籍实体中删除这本书吗?

感谢您的任何建议。

【问题讨论】:

【参考方案1】:

以上内容足以改变作者的书籍。是的。

不要忘记保存上下文,但一切似乎都很好

【讨论】:

以上是关于IOS/Objective-C/CoreData:以一对多关系编辑NSSet的主要内容,如果未能解决你的问题,请参考以下文章