Iphone 在多实体核心数据中插入值

Iphone 在多实体核心数据中插入值,iphone,core-data,ios5,Iphone,Core Data,Ios5,我试图在两个实体中插入值。如果我使用2个NSManagedObject,每个都为不同的实体设置,这是可能的,但我想知道是否还有其他方法可以做到这一点——更优雅的方法。 现在我正在做这样的事情: NSManagedObjectContext *context = [self.fetchedResultsController managedObjectContext]; NSEntityDescription *entity = [NSEntityDescription entityForName:

我试图在两个实体中插入值。如果我使用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();
}

它是有效的,但我不认为这是最好的方法。

如果这是NSManagedObject子类的两个不同实例,那么这将是正确的方法。在每个实例上设置值。你能发布你的相关代码来帮助更好地说明你的问题吗?当然,我编辑了一个显示示例的问题如果这是NSManagedObject子类的两个不同实例,这将是正确的方法。在每个实例上设置值。你能发布你的相关代码来帮助更好地说明你的问题吗?当然,我编辑了一个例子