大佬教程收集整理的这篇文章主要介绍了ios – 核心数据父实体,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图获取实体A的所有子实体,其中isPublic布尔值为YEs.
我在过去提取子类化实体时遇到了与提取相关的问题,我确信我只是没有正确地执行它.
所以我们可以说例如:
•实体A是“文件”,
•实体B是“诗”,
•实体C是“文章”
所有的诗歌和文章子类文档,文档有一个名为isBookmarked的@L_618_9@,suer可以为一首诗或文章加书签,我需要一种方法来获取所有被加入书签的文档.实体B和C需要独立,因为它们拥有其他关系.
我想使用NSFetchedResultsController来获得最佳的Core Data和UITableView性能,而我正在努力获取各种诗歌和文章.
NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"Document" inManagedObjectContext:context]; // This may not be the most elegant way of using a Boolean in a preDicate,but… NSnumber *numIsBookmarked = [NSnumber numberWithBool:YES]; NSPreDicate *preDicate = [NSPreDicate preDicateWithFormat:@"isBookmarked == %@",numIsBookmarked]; NSFetchrequest *request = [[NSFetchrequest alloc] init]; [request setEntity: entityDescription]; [request setPreDicate: preDicate]; [request setResultType: NsmanagedObjectResultType]; NSError *error = nil; NSArray *results = [contextMain executeFetchrequest:request error:&error]; if (error) { // deal with the error } [request release];
之后,您将检查是否获取了哪个子类:
for (NsmanagedObject *obj in results) { if ([obj isKindOfClass:[Poem class]]) { // do whatever } else if ([obj isKindOfClass:[Article class]]) { // do whatever } }
(或者,如果几个子类化的MO实现相同的方法,则执行respondsToSELEctor:test会更有效.)
这不起作用?
以上是大佬教程为你收集整理的ios – 核心数据父实体全部内容,希望文章能够帮你解决ios – 核心数据父实体所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。