Frage

Ich benutze Coredata mit diesem Layout

enter image description here

Jetzt möchte ich eine Tabelle mit der Höhle zeigen. Mit dem folgenden Code werden die Abschnitte und die Zeilen korrekt angezeigt. Das einzige Problem ist, dass die Bestellung nicht richtig ist. Die Zeilen unter den Abschnitten gehören nicht zu diesem Abschnitt.

NSManagedObjectContext *context = country.managedObjectContext;

    NSFetchRequest *request = [[NSFetchRequest alloc] init];
    request.entity = [NSEntityDescription entityForName:@"Cave" inManagedObjectContext:context];
    request.sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"title" ascending:YES]];
    request.predicate = [NSPredicate predicateWithFormat:@"country = %@", country];
    request.fetchBatchSize = 20;

    NSFetchedResultsController *frc = [[NSFetchedResultsController alloc]
                                       initWithFetchRequest:request
                                       managedObjectContext:context
                                       sectionNameKeyPath:@"region.region"
                                       cacheName:nil];

    [request release];

    self.fetchedResultsController = frc;

Ich bin mir nicht sicher, welcher Teil des TableViewController ich Ihnen zeigen soll?

enter image description here

"Bätterich" sollte in "anderen" sein und "Pertusio acquacalda" sollte in "Ticino" sein. Ich habe die SQL -Datei von Core Data überprüft und die Referenzen sind dort richtig.

War es hilfreich?

Lösung

Löste das Problem mit den folgenden SortDescriptoren

NSSortDescriptor *sortDescriptorRegion = [[NSSortDescriptor alloc] initWithKey:@"region.region" ascending:YES];
NSSortDescriptor *sortDescriptorCave = [[NSSortDescriptor alloc] initWithKey:@"title" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptorRegion, sortDescriptorCave, nil];
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top