orderDetail
はconsume
と関連しています。 consume
はここに渡されたパラメータとしてCoreDataContext
からフェッチされて存在しました。異なるコンテキストでオブジェクト間の関係「順序」を確立しようとすると、無効な試み
orderDetail = [NSEntityDescription insertNewObjectForEntityForName:@"OrderDetail" inManagedObjectContext:CoreDataContext];
orderDetail.order = consume
しかし、このコードは例外をスロー:私はNSLog
NSLog(@"%@", orderDetail.managedObjectContext);
NSLog(@"%@", consume.managedObjectContext);
で例外をチェック異なるコンテキストで
をオブジェクト間の関係 '順序' を確立するため
不正な試みを
それから、私は
orderDetail.managedObjectContext
が存在しますが、consume.managedObjectContext
はnil
です。例外がスローされたのはこれですか?なぜこのようなことが起こったのか分かりません。
更新私の質問、詳細情報:
まず
私が持っている私はconsume-entity
を削除し、consume-entity
を再挿入するとき、これが起こっている
第二に一つだけコンテキスト:
私私は古いをきれいにする[ CoreDataContext performBlock:^{ [Consume cleanTheContext:CoreDataContext];... ... ... ... ... for (NSDictionary *consume in consumes) { [Consume consumeWithLecaiInfo:consume inManagedObjectContext:CoreDataContext byUser:user]; }];
と呼ばれるデータを受け取ったときに私は、
現実にorderDetail
を要求し、consume
の関係を確立し、私はこの方法viewWillAppear
にA
にポップとき、私が消費リクエストBのViewController(B viewWillAppear)へのViewControllerをプッシュconsume
とconsume
新を挿入します(私はconsume
を更新するのではなく、削除して、再度挿入する必要があり知っているが、consume
が、それはこのようにmanagedObjectContextだ失われた理由を私は知らない)このエラーがたまに発生し、Aを押してください、ポップB、ポップsh A、pop B ...例外がスローされました。
2番目のコンテキストは 'nil'なので、コンテキスト間でオブジェクトを転送しません。 –
その目的のために任意のコンテキストを使用できます – Azat
何ですか?あなたのコメントは意味をなさない。 OPは明らかに2つのコンテキストを使用していません。 –