У меня есть следующая модель данных:
entityA<-->>entityB<<-->>entityC
entityD<-->>entityE
Обратите внимание, что entityD и entityE не связаны с A-C.
Мой DetailViewController принимает свойства управляемых объектов и сохраняет их как новый управляемый объект в manageObjectContext.
В настоящее время я отображаю существующий управляемый объект в UILabels следующим образом:
UILabel1.text = [self.selectedEntityB nameB];
UILabel2.text = [self.selectedEntityA nameA];
Затем я сохраняю контекст в действии сохранения здесь:
- (IBAction)save:(id)sender {
EntityD *newEntityD = [NSEntityDescription insertNewObjectForEntityForName:@"EntityD"
inManagedObjectContext:self.managedObjectContext];
[newEntityD setValue:self.UILabel2.text forKey:@"nameD"];
EntityE *newEntityE = [NSEntityDescription insertNewObjectForEntityForName:@"EntityE"
inManagedObjectContext:self.managedObjectContext];
[newEntityE setValue:self.UILabel1.text forKey:@"nameE"];
NSError *anyError = nil;
BOOL savedSuccessfully = [self.managedObjectContext save:&anyError];
if (!savedSuccessfully) {
}
}
Это работает для установки nameD и nameE. Я пытаюсь создать связь между вновь созданными объектами для EntityD и EntityE. Допустим, связь между entityE и entityD — это toD. Я пробовал в действии сохранения:
[newEntityE setValue:self.UILabel2.text forKey:@"toD"];
Но я получаю сообщение об ошибке: «NSInvalidArgumentException», причина: «-[__NSCFString manageObjectContext]: нераспознанный селектор отправлен в экземпляр 0x10939fd00»
Как мне установить отношения между вновь созданными объектами?