核心数据如何从实体检索列
答
我认为你可以这样来做:
NSManagedObjectContext *context = [self managedObjectContext];
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"--table--" inManagedObjectContext:context];
[fetchRequest setEntity:entity];
NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:nil];
NSMutableArray *elementsFromColumn = [[NSMutableArray alloc] init];
for (NSManagedObject *fetchedObject in fetchedObjects) {
[elementsFromColumn addObject:[fetchedObject valueForKey:@"--column--"]];
}
所以,你必须从所有的表的特定列的元素。 希望它是你在找什么:)
答
看看documentation NSFetchRequest。您可以要求它仅返回包含特定属性的字典 - 这与您将获得的关系密切相关。感兴趣的方法是setResultType:
和setPropertiesToFetch:
。
工作。感谢发布。现在如果只有我能弄清楚如何让这个自动完成功能完成,我会很开心。 – user597608 2012-03-24 22:49:23
@ bs7所以当我executeFetchRequest时CoreData获取所有可用的列,或者它只在我调用valueForKey时获取? – onmyway133 2013-10-19 08:54:28
为我工作..大获好评! – TharakaNirmana 2014-07-02 07:23:31