LuckyLuke LuckyLuke - 1 month ago 10
iOS Question

Inserting a new managed object in Core Data

I am new to Core Data and I feel that I don't get a hang of it. When you are going to create a new managed object you have to use the method that I pasted in at the bottom from the NSEntityDescription class.

Now is this object registered in the context, it is right? Why do you have the

insertObject:
in NSManagedContext then? It works without invoking that method after using the one in
NSEntityDescription
. Could somebody explain?

NSManagedContext

insertObject:


NSEntityDescription

+ (id)insertNewObjectForEntityForName:(NSString *)entityName inManagedObjectContext:(NSManagedObjectContext *)context

Answer

You can create NSManagedObject with nil context and then decide whether you want to add it to context or not. You may also like this: Is there a way to instantiate a NSManagedObject without inserting it?