mon programme doit prendre une base de données SQL pré-remplie, puis enregistrer les enregistrements dans la base de données de l'application. Malheureusement, pour une raison quelconque l'application se ferme dans cette méthode dans le délégué de l'application:Impossible d'enregistrer la base de données sql pré-remplie dans la base de données SQL de base: managedObjectModel non trouvé
#pragma mark -
#pragma mark Core Data stack
- (NSManagedObjectModel *)managedObjectModel {
if (managedObjectModel_ != nil) {
return managedObjectModel_;
}
NSString *modelPath = [[NSBundle mainBundle] pathForResource:@"iProspectLite" ofType:@"sqlite"];
NSURL *modelURL = [NSURL fileURLWithPath:modelPath];
managedObjectModel_ = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
return managedObjectModel_;
}
il semble que l'application ne peut pas trouver un valide managedObjectModel_, ou il n'existe pas, ou ne crée pas un. Comment puis-je résoudre ceci?
l'un des messages d'erreur que je reçois sur la console est la suivante: Mettre fin application en raison de uncaught raison d'exception: [NSKeyedUnarchiver initForReadingWithData:]
partie de ce que j'ai rétréci vers le bas à l'NSManagedObject, en ce doesn ne semble pas être créé ou trouvé.
Autres informations qui peuvent être utiles: j'ai ajouté une entité et les attributs définis comme décrit dans de nombreux autres tutoriels données de base ce qui suit est la classe qui définit mon entité:
#import "Mine.h"
@implementation Mine
@dynamic primarykey;
@dynamic name;
@dynamic firstCommodity;
@dynamic longitude;
@dynamic county;
@dynamic secondCommodity;
@dynamic latitude;
@dynamic thirdCommodity;
@end
ok cela a plus de sens. J'ai changé les chaînes à mon nom App et maman, et maintenant quand le programme se bloque, il me donne cette erreur: Terminaison de l'application en raison de l'exception non interceptée 'NSInvalidArgumentException', raison: '*** - [NSURL initFileURLWithPath:]: paramètre de chaîne nil Ce qui me porte à croire qu'il ne peut pas trouver le fichier maman. Ce qui est bizarre. Heck je ne peux pas sembler trouver un fichier maman n'importe où sur mon mac, alors peut-être core-data ne fait pas un tel fichier? –
Dans votre projet en code, vous aurez un fichier avec une extension de 'xcdatamodel' (c'est celui avec votre graphe d'entité.) Le fichier' mom' dans la construction aura le même nom que ce fichier. Vous pouvez également utiliser 'modelByMergingModels:' qui va automatiquement localiser tous les fichiers du modèle pour vous. – TechZen
J'ai choisi le vôtre comme réponse parce que c'était le plus proche de ce que j'ai trouvé travaillé. il doit être pathForResource: @ "AppName" ofType: @ "momd" –