2012-07-20 9 views
8

Uygulamamın temel verilerini Magical Record'a taşıyorum. Bir UITableView güncellenmesi için, ben daha önce bu koda sahip:Alternatif magicalrecord kullanarak fetchedResultsController kodu için?

- (NSFetchedResultsController *)fetchedResultsController { 

    if (_fetchedResultsController != nil) { 
     return _fetchedResultsController; 
    } 

    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; 
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Entry" inManagedObjectContext:[CoreDataStore mainStore].context]; 
    [fetchRequest setEntity:entity]; 

    [fetchRequest setFetchBatchSize:20]; 

    NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"creationDate" ascending:NO]; 
    NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil]; 

    [fetchRequest setSortDescriptors:sortDescriptors]; 

    // Use the sectionIdentifier property to group into sections. 
    NSFetchedResultsController *aFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:[CoreDataStore mainStore].context sectionNameKeyPath:@"sectionIdentifier" cacheName:@"Root"]; 
    aFetchedResultsController.delegate = self; 
    self.fetchedResultsController = aFetchedResultsController; 

    self.fetchedResultsController.delegate = self; 

    return _fetchedResultsController; 
} 

ben yerde bu kodu tutmak, yoksa sihirli kaydı kullanılarak farklı çalışması gerekir?

cevap

14

Böyle kullanabilirsiniz:

- (NSFetchedResultsController *)fetchedResultsController { 
    if (_fetchedResultsController != nil) { 
     return _fetchedResultsController; 
    } 

    _fetchedResultsController = [NSManagedObject fetchAllGroupedBy:nil withPredicate:nil sortedBy:@"date" ascending:NO delegate:self]; 

    return _fetchedResultsController; 
} 

Sen alt sınıf ile NSManagedObject değiştirmek zorunda.

Diğer seçenekleri here (başlığın altı) görebilirsiniz.

+1

Bundan hiç bir sonuç almayacağım. PerformFetch gibi ek bir adım var mı? – Allen