mam setup model Core danych tak:Jak utworzyć obiekt NSFetchRequest, który filtruje obiekty danych podstawowych na podstawie atrybutów i relacji?
- Blockbuster Entity
- do wielu relacji do DVD podmiotów.
- DVD Podmiot
- tytuł atrybut (string)
- do jednego relacji do rodzica Blockbuster jednostka
Pojedyncza Blockbuster może mieć znajduje się w nim wiele płyt DVD (To-Many). Każda płyta DVD może być tylko częścią pojedynczego hitu (To-One).
Istnieje wiele Blockbuster's, a niektóre mogą zawierać elementy DVD, które mają ten sam tytuł, co elementy DVD z innych Blockbuster. Na przykład: Blockbuster A może mieć kopię "Transformers 2", podobnie jak Blockbuster C i Blockbuster G. Udawajmy, że żaden hitu nie ma więcej niż jednej kopii tego samego utytułowanego filmu.
Interesuje mnie pobranie Transformers 2 DVD z Blockbuster C. Nie chcę kopii od Blockbuster A lub G, ponieważ mój szef często tam przebywa, a ja mogę tylko uciec z tego kawałka śmieci w Blockbuster C.
Moje pytanie brzmi, jak mogę tworzyć NSFetchRequest który chwyta DVD z „Transformers 2” tytuł, który jest dzieckiem Blockbuster „C” jednostki dominującej?
Tego typu wniosek przechwyci wszystkie „Transformers 2” DVD, ale nie jeden specyficzny dla jednostki Blockbuster C:
NSManagedObjectContext *moc = [self managedObjectContext];
NSString *aTitle = @"Transformers 2";
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"title == %@", aTitle];
[request setEntity:[NSEntityDescription entityForName:@"DVD" inManagedObjectContext:moc]];
[request setPredicate:predicate];
NSError *error = nil;
NSArray *results = [moc executeFetchRequest:request error:&error];
// error handling code
[request release];
Czy istnieje sposób, aby zdać, powiedzmy, identyfikator przedmiotem powiązany obiekt wewnątrz NSPredicate, czy w oparciu o to filtrowanie?
Dziękuję bardzo, że to zrobił! I dzięki za link do dokumentów. Bardzo pomocne. :) –