我正在尝试在2个实体中插入值。如果我使用2个NSManagedObject,每个都设置为不同的实体,但我想知道是否有另一种方法可以实现它 - 一种更优雅的方式。 现在我正在做这样的事情:
NSManagedObjectContext *context = [self.fetchedResultsController managedObjectContext];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Entity" inManagedObjectContext:self.managedObjectContext];
NSManagedObject *newManagedObject = [NSEntityDescription insertNewObjectForEntityForName:[entity name] inManagedObjectContext:context];
[newManagedObject setValue:[NSDate date] forKey:@"Date"];
NSError *error = nil;
if (![context save:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
NSEntityDescription *entity2 = [NSEntityDescription entityForName:@"Entity2" inManagedObjectContext:self.managedObjectContext];
NSManagedObject *newManagedObject2 = [NSEntityDescription insertNewObjectForEntityForName:[entity2 name] inManagedObjectContext:context];
[newManagedObject2 setValue:[NSDate date] forKey:@"Date"];
NSError *error = nil;
if (![context save:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
它有效,但我不相信这是最好的方式。