我对写入数组的托管对象上下文执行获取请求。 fetch本身运行良好,数组填充正确。但是,当我尝试在(基于单元格的)表视图中显示数组内容时,不会显示任何内容。设置如下:
NSArrayControllers
内容数组绑定到文件的所有者结果数组(据我所知,该数组填充了NSManagedObject
个对象)。在这里,我尝试了实体和类模式。我还为我的对象创建了一个NSManagedObject
子类,以便在类模式下访问绑定的属性。
以上都没有表视图填充获取请求的结果。那么,任何人都可以帮我解决这个问题吗?谢谢!
根据要求,这里是fetch方法的代码(其他一切都在Interface Builder中完成):
- (IBAction)fetch:(id)sender {
NSLog(@"Performing fetch.");
NSManagedObjectContext *moc = [self managedObjectContext];
// Connecting entity
NSEntityDescription *entityDescription = [NSEntityDescription
entityForName:@"Operation"
inManagedObjectContext:moc];
//Creating fetch request
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:entityDescription];
// Set predicate for fetch request
float maxDurationInMinutes = [durationFetchInput floatValue];
NSPredicate *predicate = [NSPredicate predicateWithFormat:
@"(durationInMinutes >= %f)", maxDurationInMinutes];
[request setPredicate:predicate];
//Set sort ordering for fetch request
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc]
initWithKey:@"durationInMinutes" ascending:YES];
[request setSortDescriptors:@[sortDescriptor]];
NSError *error;
NSArray *array = [moc executeFetchRequest:request error:&error];
fetchReturnArray = [[NSArray alloc] initWithArray:array];
[objectsCountOutput setIntegerValue:[fetchReturnArray count]];
if (array == nil)
{
NSLog(@"Error fetching...");
}
NSLog(@"%@",fetchReturnArray);
}