Ho aggiunto tutto il codice pertinente al delegato dell'app e sono in grado di aggiungere al modello dati e recuperare dal modello dati in applicationDidFinishLaunchingWithOptions.'+ entityForName: nil non è un parametro NSManagedObjectContext legale - Dati principali
Il mio problema si presenta quando sto provando a scrivere sul modello di dati nel mio View Controller. Ho aggiunto questo codice al file di intestazione:
NSFetchedResultsController *fetchedResultsController;
NSManagedObjectContext *managedObjectContext;
@property (nonatomic, retain) NSFetchedResultsController *fetchedResultsController;
@property (nonatomic, retain) NSManagedObjectContext *managedObjectContext;
E questo codice nel mio file di implementazione:
NSManagedObjectContext *context = [self managedObjectContext];
NSManagedObject *model = [NSEntityDescription
insertNewObjectForEntityForName:@"Events"
inManagedObjectContext:context];
[model setValue:@"Sample Event" forKey:@"eventName"];
NSError *error;
if (![context save:&error]) {
NSLog(@"Couldn't save: %@", [error localizedDescription]);
}
Tuttavia, ottengo il seguente errore:
'NSInvalidArgumentException', reason: '+entityForName: nil is not a legal NSManagedObjectContext parameter searching for entity name 'Events''
Qualcuno sa cosa sta succedendo? Qualsiasi aiuto sarebbe apprezzato.
Penso che il contesto sia zero. Assicurati che [self managedObjectContext] non stia tornando nil – mask8
Notando per la posterità, puoi ottenere questo errore se passi il ivar per ManagedObjectContext invece di usare il metodo getter – Matthematics