私はこのようになりますデータモデル持って取得:ユーザーが顧客を選択したときに、私はテーブルビュー上の顧客のリストを表示コアデータが要求
を、それはその後のための部屋のリストを示していその顧客 - これは現在すべて正常に動作します。
問題は、私が部屋の詳細ビューを表示しようとしているときです。ユーザーが部屋を選択すると、その部屋のすべての値を含むビューが表示されます。 (うまくいくはずです)。私はこれをある程度まで働かせていますが、もし私が同じ名前の2つの部屋を持っていれば - つまり、2人の異なる顧客のために "ベッドルーム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];
私は起こるしたいどのような、詳細ビューがすでに選択されているものを顧客に基づいて詳細を示しています。
すべてのヘルプははるかに高く評価されています...
おかげ
[NSPredicate predicateWithFormat:@ "(Room ==%@)AND、(CustomerRelationship ==%@)"、titleStr、customerManagedObject] – zrxq
ありがとうございました!お辞儀をする :-) –