2010-11-19 10 views

Antwort

2

Warnung: Ungeprüfte-Code Incoming

Unter der Annahme, sowohl Ihre Werkstatt und Studenten Einheiten haben einen Attribut „name“ und Studenten Einheit hat eine Beziehung namens „Workshop“ Dies ist, wie Sie die Objekte holen würde:

- (NSArray*) getStudentsForWorkshop:(NSString*) workshopName { 
    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; 
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Student" 
              inManagedObjectContext:managedObjectContext]; 
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"Workshop.name LIKE %@", workshopName]; 
    [fetchRequest setPredicate:predicate]; 
    [fetchRequest setEntity:entity];           

    NSArray *result = [managedObjectContext executeFetchRequest:fetchRequest error:nil]]; 

    NSArray *sortedArray = [NSArray arrayWithArray: [result sortedArrayUsingSelector:@selector(compareStudent:)]]; 
    return sortedArray;  
} 

Für Sortierung würden Sie compareStudent wie so implementieren:

- (NSComparisonResult)compareStudent:(NSManagedObject*)otherObject { 
    return [self.name compare:otherObject]; 
} 
Verwandte Themen