核心数据获取请求

时间:2012-01-24 11:12:17

标签: iphone objective-c core-data

我有一个如下所示的数据模型:

enter image description here

我在桌面视图上显示客户列表,当用户选择客户时,它会显示该客户的房间列表 - 这一切目前都可以正常工作。

我得到的问题是当我尝试显示房间的详细视图时。当用户选择房间时,它会显示包含该房间的所有值的视图。 (应该这样做)。我在某种程度上有这个工作,但如果我有两个房间名称相同,即 - “卧室1”,对于两个不同的客户,那么它不会显示正确的房间数据。

这是我正在使用的代码:

AppDelegate_Shared *appDelegate = [[UIApplication sharedApplication] delegate];

    NSManagedObjectContext *context = [appDelegate managedObjectContext];

    NSEntityDescription *entityDesc = [NSEntityDescription entityForName:@"Rooms" inManagedObjectContext:context];

    NSFetchRequest *request = [[NSFetchRequest alloc] init];

    [request setEntity:entityDesc];

    NSPredicate *pred = [NSPredicate predicateWithFormat:@"(Room = %@)", titleStr];

    [request setPredicate:pred];

    NSManagedObject *matches = nil;
    NSError *error;

    NSArray *objects = [context executeFetchRequest:request error:&error];

    if ([objects count] == 0) 
    {
        NSLog(@"No matches");
    } else 
    {
        matches = [objects objectAtIndex:0];
        NSLog(@"matches found");
        aLbl.text = [matches valueForKey:@"DimA"];
    }
    [request release];
    [NSFetchedResultsController deleteCacheWithName:nil];  
    [self.fetchedResultsController.fetchRequest setPredicate:pred];

我想要发生的是,详细视图根据已选择的客户显示详细信息。

非常感谢任何帮助...

由于

0 个答案:

没有答案