Getting list of values from an entity in code
我有一个名为clients的
的属性。
在运行循环时以编程方式获取每个clientCompany的列表最直接的方法是什么(以便可以从每个发现的clientCompany继续执行代码)?在这种情况下,我不确定是否应该访问阵列控制器或托管对象。
我已经尝试过:
1 2 3 | for (NSDictionary *key in clientsController) { NSLog(@"%@", [key objectForKey:@"clientCompany"]); } |
没有运气,但我认为我还没有做到。我也出于好奇而尝试打印数组的rangedobjects,但是它打印为空:
1 | NSLog(@"%@", [clientsController arrangedObjects]); |
clientsController已被初始化并可以在程序的其他位置访问,所以我认为这很简单,但是我对这一切还是很陌生的。谢谢。
更新
我在
这对我有用:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; NSManagedObjectContext *clientsMoc= [clientsController managedObjectContext]; NSEntityDescription *entity = [NSEntityDescription entityForName:@"Clients" inManagedObjectContext:clientsMoc]; [fetchRequest setEntity:entity]; NSError *error = nil; NSArray *items = [clientsMoc executeFetchRequest:fetchRequest error:&error]; [fetchRequest release]; NSInteger *counter; counter = 0; for (NSString *s in items) { NSManagedObject *mo = [items objectAtIndex:counter]; // assuming that array is not empty id value = [mo valueForKey:@"clientCompany"]; NSLog(@"a value is %@", value); counter = counter + 1; } |