Вставить значения в данные ядра нескольких сущностей - PullRequest
2 голосов
/ 02 ноября 2011

Я пытаюсь вставить значения в 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();
}

Это работает, но я не уверен, что это лучший способ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...