これはバックグラウンド スレッドにあります。これはプライベート同時実行型のコンテキストであり、コンテキスト performBlock 内で実行されます。私はそれを正しくやっています、少なくとも私はそう思っています。
私はコアデータの初心者ではありませんが、これをしばらく見つめていたので、明らかな何かを見落としている可能性があります。
コードは次のとおりです。
FFXCollection *backgroundCollection = (FFXCollection *) [context objectWithID:collectionID];
//At this point backgroundCollection.managedObjectContext is the same as context
NSError *error = nil;
[context save:&error];
NSLog(@"error %@", error); //Note that there is no error here
if (!backgroundCollection.managedObjectContext) {
DLog(@"why not?"); //At this point the managedObjectContext is nil!!!
}
管理対象オブジェクト内で managedObjectContext が nil になるのはなぜですか?
この例は不自然ですが、私の問題を示しています。私の実際のコードでは、保存が発生し、関係を設定しようとしています。次に、別の保存が発生すると、上記のために検証エラーが発生します。
ありがとう