2010-10-13 19 views
3

Je suis un utilisateur/apprenant Core Data pour la première fois pour iPhone, je pensais que a été utilisé pour enregistrer les modifications apportées au magasin persistant. Mais lorsque je recharge et appelle NSFetch, les objets sont toujours là. Des idées pourquoi?Base de données d'enregistrement à la base de données ne fonctionne pas

for (int i ; i < [mutableFetchResults count];i++) 
{ 
    NSManagedObject *toDelete = [mutableFetchResults objectAtIndex:i]; 
    [managedObjectContext toDelete]; 

    // Update the array and table view. 
    [mutableFetchResults removeObjectAtIndex:i]; 
} 


if (![managedObjectContext save:&error]) { 
    // Handle the error. 
    NSLog(@"Unresolved error %@, %@", error, [error userInfo]); 
    exit(-1); // Fail 
} 

Répondre

6

Je comptais voir une ligne où vous supprimez l'objet de la managedObjectContext:

[manageObjectContext deleteObject:toDelete]; 

supposant manageObjectContext est votre contexte et toDelete est un ManagedObject dans votre contexte ou mutableFetchResults.

Ensuite, je m'attendais à voir la sauvegarde directement après.

+1

+1 Ceci est la cause du problème. Il ne retire pas les objets du contexte mais seulement d'un tableau aléatoire. – TechZen