Основной запрос данных - PullRequest
0 голосов
/ 24 января 2012

У меня есть модель данных, которая выглядит следующим образом:

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];

То, что я хочу, это подробный вид, показывающий детали, основанные на том, какой клиент уже выбран.

Любая помощь очень ценится ...

Спасибо

1 Ответ

1 голос
/ 24 января 2012

Измените свой предикат, включив в него также искомого клиента.

Представьте, что это SQL (при условии, что вы использовали SQL), предикат - это ваше предложение WHERE.Если Комната не уникальна, то будут возвращены все комнаты с одинаковым именем.

Вам нужны комнаты, в которых ROOM == roomName и customer == customerId.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...