CoreData • 如何使用 Swift 5 修改 CoreData 中的多对多关系?

CoreData • How to modify a many-to-many-Relationship in CoreData using Swift 5?

我有两个 CoreData Entities,中间有一个 many-to-many Relationship

我们称它们为 Person & Book。我们将关系属性称为 Person.booksBook.persons,类型均为 NSSet.

背景:我很难实现这个,因为你不能直接修改NSSet(不是NSMutableSet).

问题:如何修改many-to-many-relationship,例如在Person中添加一个新的Book

当您在模型中创建关系时,Xcode 将生成通过关系获取和设置数据的方法。对于一对多关系,您将获得一个 getter <relationship name> 和两个设置器 addTo<relationship name>

所以在这种情况下,您可以使用 addToBooksaddToPersons

更新关系