gpt4 book ai didi

iphone - CoreData 向实体行添加新关系

转载 作者:行者123 更新时间:2023-11-28 17:47:57 25 4
gpt4 key购买 nike

问题来了:

我的项目有 2 个实体。第一个是组织,第二个是品牌。它们以一对多的关系连接。 “一个组织可以拥有多个品牌”一切都在为此而努力。带有组织的 Tableview 和 Brandtableview 以及一个 DetailView。

我想要的是在我的应用程序中添加一个收藏夹功能,我可以在其中将收藏夹列表与我喜欢的品牌联系起来。因此我将实体“Favourits”添加到 xcdatamodel。每个 FavouriteList 都有一个名称,它与具有多对多关系的“品牌”相关联。“一个 Favouritelist 可以有多个品牌,而 EBrands”可以在多个 Favoritelists 中。

创建一个新的List有下面的代码

currentFav = (favoriten*)[NSEntityDescription insertNewObjectForEntityForName:@"favoriten" inManagedObjectContext:managedObjectContext];
[currentFav setName:@"MeineFavoriten"]; [self saveAction];

在品牌的 DetailView 中,我有一个 addToFav 操作,我想更新品牌中的品牌与收藏夹列表的关系。

例子:“将名称为“XY”的品牌链接到 favoriten 的 MeineFavouriten”

我该怎么做?

最佳答案

对多关系是集合,因此您可以使用简单的 setValue 调用。相反,您首先必须获得一个可变集,将一个对象添加到该集,然后将变异集设置为值。

NSMutableSet *favoriteBrands=[aFavoriteList mutableSetValueForKey:@"brands"];
[favoriteBrands addObject:aNewBrandObj];
[aFavoriteList setValue:favoriteBrands forKey:@"brands"];

如果您为 FavoriteList 创建一个类,您将获得使您可以轻松地将对象添加到多对多关系的方法,而无需编写三行代码。

关于iphone - CoreData 向实体行添加新关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4216432/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com