There is a core data model with two entities i my iOS application.
Entity: Unit / Attributes: unit_name - NSString
->> Relationship to Exercise
(one to many
)
Entity: Exercise / Attributes: exercise_name - NSString .
So one unit
can have many exercises
.
In my table view controller are all available exercises
listed.
(So in the first time, i make a fetch request for the Exercise
entity and the managedObjectContext
points to this entity.
If i want to save a "NEW"
unit
with exercises
the save function doesn't work.
There is no error at all, but the unit
table is still empty.
Here is the code for the save function:
Units *newUnit = [NSEntityDescription insertNewObjectForEntityForName:@"Units" inManagedObjectContext:[self.coreDataHelper managedObjectContext]];
newUnit.unit_name = unitTextField.text;//Attribute
newUnit.exercises = exerciseSet;//Relationship (NSSet)
NSError *error = nil;
if (![[self.coreDataHelper managedObjectContext]save:&error]) {
NSLog(@"There was an error! %@", error);
}
else {
NSLog(@"Success!");
}
It seems like the managedObjectContext
still points to the Exercise
entity. (Because it was initialized the first time with this entity) the coreDataHelper
has the NSPersistentStoreCoordinator
, the NSManagedObjectContext
, the NSManagedObjectModel
and some methods to read write and delete.
Thanks for help!