【发布时间】:2014-04-22 01:15:32
【问题描述】:
所以我正在阅读 Apple 的核心数据指南和 Stack 上的问题,这一切都是正确的,但我的脑海中并没有完全“点击”。
我有一个 BookShop,它具有一对多的 Books 关系。
我进入了一家名为“Jenny's BookShop”的书店和一家名为“BigWorld Books”的书店。
这就是我将“新书”添加到“新书店”的方式:
BookShop *myBookShop = [NSEntityDescription insertNewObjectForEntityForName:@"BookShop" inManagedObjectContext:context]; myBookShop.books = [[NSMutableSet alloc]init]; Book *myBook = [NSEntityDescription insertNewObjectForEntityForName:@"Book" inManagedObjectContext:context]; myBook.BookShop = myBookShop;[myBookShop addBookObject:myBook];
假设我想要一本书只属于“BigWorld Books”而不属于“Jenny's BookShop”。
我假设我使用获取请求并获取指向“BigWorld Books”的指针,然后将一本书分配给这个特定的书店?这是我一直搞砸的地方。
如果有人可以“慢慢地”解释这一点,将不胜感激。
编辑:
答案:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name == %@"]; [request setPredicate:predicate]; [request setFetchLimit:1]; BookShop *resultBookShop = [[_managedObjectContext executeFetchRequest:request error:&error] lastObject]; [myBook setBookShop:resultBookShop];
【问题讨论】:
-
你怎么“搞砸了”?出了什么问题?错误?零值?
-
我只是没有实现我的目标,即成功地将特定书籍添加到特定的书店。每次我将一本书添加到书店时,它似乎都会添加到所有书店。你想要一个示例 sn-p 代码吗?我还没有发布代码的原因是我想看看其他人会如何做,而不是仅仅修复我的。