Impossible de créer un objet avec insertNewObjectForEntityForName

marrconemarrcone Membre
18:06 modifié dans API AppKit #1
insertNewObjectForEntityForName renvoie nil. Une explication ? Voici le code.

-
(BOOL)performDragOperation:(id &lt; NSDraggingInfo &gt;)sender{<br />	NSPasteboard *pboard = [sender draggingPasteboard];<br /><br />	if ([[pboard types] containsObject:NSPasteboardTypePDF]) {<br />		NSData *pdfData = [pboard dataForType:NSPasteboardTypePDF];<br />		//On crée un nouvel objet RCMPDFImage<br />		NSManagedObjectContext *moc = [document managedObjectContext];<br />		NSLog(@&quot;moc = %@&quot;, moc);<br />		RCMPDFImage *pdfImage = [NSEntityDescription <br />								 insertNewObjectForEntityForName:@&quot;RCMPDFImage&quot; <br />								 inManagedObjectContext:moc];<br />		<br />		<br />		NSLog(@&quot;pdfImage = %@&quot;, pdfImage);<br />		<br />		return YES;<br />	}<br /><br />}



A l'éxécution la console affiche :

Running...

2010-02-27 17:37:37.879 PlaneCoreData[83641:a0f] moc = <NSManagedObjectContext: 0x2000c2d60>
2010-02-27 17:37:37.881 PlaneCoreData[83641:a0f] pdfImage = *nil description*

Réponses

  • frOMfrOM Membre
    18:06 modifié #2
    Je ne suis qu'un archi-débutant, voici un type de code qui marche chez moi :

    <br />NSManagedObject *myObject = [NSEntityDescription insertNewObjectForEntityForName:name inManagedObjectContext:context];<br />[myObject setValue:unObjet forKey:@&quot;uneClé&quot;];<br />[context processPendingChanges];
    


    insertNewObjectForEntityForName retourne un managedObject... vide. Il faut ensuite déterminer les valeurs par clés.
Connectez-vous ou Inscrivez-vous pour répondre.