管理対象オブジェクトのコンテキストがどこに消えていくのかを理解しようと、頭を悩ませています。
私は元々、アプリデリゲート内でインスタンス化してから、NSWindowController内の保持されたプロパティに次のように渡します。
self.TPWC = [[TestPanelWindowController alloc] initWithWindowNibName:@"TestPanel"];
self.TPWC.managedObjectContext = self.managedObjectContext;
self.TPWC.persistentStoreCoordinator = self.persistentStoreCoordinator;
[TPWC.window makeKeyAndOrderFront:nil];
NSManagedObject
次に、をインスタンス化して、次のように管理対象オブジェクトコンテキストに挿入するボタンがあります。
NSManagedObject *newInstanceOfSomeEntity =
[NSEntityDescription insertNewObjectForEntityForName:@"SomeEntity"
inManagedObjectContext:self.managedObjectContext];
この時点で、self.managedObjectContext
どういうわけかゼロになっています。
windowDidLoadにブレークポイントを挿入しました。その時点で、の有効なインスタンスがあることを確認できますが、NSManagedObjectContext
viewDidLoadと管理対象オブジェクトを挿入しようとするとどういうわけかnilになります。
カスタムイニシャライザーを作成して設定しようとしましたNSManagedObjectContext
が、まだゼロになっています。
Core Dataは私にとって非常に新しいものであり、何が問題になっているのかを理解するのに苦労しています。