2010-03-13 2 views
0

Я использую основные данные в своем приложении. У меня есть два объекта, которые связаны между собой: EntityA и EntityB. EntityA имеет свойство типа «отношения» с EntityB. Кроме того, обе эти сущности являются определенными классами (а не стандартным NSManagedObject). Я вставляю новый объект в свои данные:iPhones SDK: установка объекта свойства отношения с использованием данных ядра?

EntityA *newEntityA = [NSEntityDescription insertNewObjectForEntityForName:@"EntityA" inManagedObjectContext:self.managedObjectContext]; 

newEntityA.name = @"some name"; 
newEntityA.entityB.name = @"some other name"; 

Проблема заключается в том, что entityB.name равно null. Даже если я добавлю инструкцию NSLog() сразу после присвоения значения, оно равно null. Каков правильный способ установки моего свойства «имя» EntityB, когда EntityB является свойством EntityA?

ответ

1

Вы должны также создать объект EntityB первым:

EntityA *newEntityA = [NSEntityDescription insertNewObjectForEntityForName:@"EntityA" inManagedObjectContext:self.managedObjectContext]; 

newEntityA.name = @"some name"; 

EntityB *newEntityB = [NSEntityDescription insertNewObjectForEntityForName:@"EntityB" inManagedObjectContext:self.managedObjectContext]; 

newEntityA.entityB = newEntityB; 
newEntityA.entityB.name = @"some other name"; 
+0

Спасибо. Иногда это очевидные вещи, которые спасают нас. – memmons

Смежные вопросы