我有一個NSManagedObject
子類,並希望獲取其子對象中的某個子對象,並給定某個值,該子對象是子「position」的屬性。NSManagedObject上的NSManagedObjectContext屬性
我寫了一個函數- (ChildObject*)childWithPosition:(int)position
。
在這裏我檢查是否存在這個孩子,如果有,就返回它。
如果它不存在,那麼我想創建它。
所以......
我能做到這一點的ParentObject內...
- (ChildObject*)childWithPosition:(int)position
{
//check if child exists and return it if it does.
// if it does not exist then...
ChildObject *child = [[ChildObject alloc] initWithEntity:[NSEntityDescription entityForName:@"ChildObject" inManagedObjectContext:self.managedObjectContext] insertIntoManagedObjectContext:self.managedObjectContext];
child.position = position;
return child;
}
我的問題是,是不是OK和安全的使用屬性self.manageObjectContext父和使用這個上下文插入一個新的子對象?
在這種情況下,家長和孩子將共享相同的上下文。父母之一。 –
謝謝。我不知道爲什麼,但我更喜歡initWithEntity:insertIntoManagedObjectContext方法來啓動ManagedObjects。 – Fogmeister
@Fogmeister對不起。這是代碼中的一個錯字。我修好了它。插入方法是我通常創建的用於在上下文中插入對象的實用方法。 –