ドキュメント ベースのアプリで Core-data を使用するためのむらのある情報があるようです。現在のドキュメントでモーダル ウィンドウを実行するウィンドウ コントローラーがあります。ユーザーがテキスト フィールドにデータを入力すると、変更可能な文字列の配列が作成されます。これを使用してモデル オブジェクトを作成し (多対多の関係)、コア データ スタックに保存します。これは、モーダル ウィンドウのコントローラーにあるメソッドです。
- (IBAction)saveContext:(id)sender {
if ([tagsArray count] != 0) {
int objectcount;
for (objectcount = 0; objectcount < [tagsArray count]; objectcount ++){
Tag *singleTag = (Tag *) [NSEntityDescription insertNewObjectForEntityForName:@"Tag" inManagedObjectContext:self.managedObjectContext];
singleTag.tagname = [tagsArray objectAtIndex:objectcount];
singleTag.video = selectedFile;
NSLog(@"Tagnames %@",singleTag.tagname);
}
}
[NSApp stopModalWithCode:NSOKButton];
[self.window close];
}
わかりました、コンパイラは self.managedObjectContext に満足していません。このクラスにはコンテキストがないため、当然のことです。私が理解しているように、ドキュメントベースのアプリでは、MOC を 1 つだけ使用する必要があります。ドキュメントの MOC にアクセスする方法がわかりません。Apple のドキュメントは少し不明確です。
管理対象オブジェクト コンテキストの取得
OS X の場合:
単一コーディネーター アプリケーションでは、アプリケーションのコンテキストをアプリケーション デリゲートから直接取得できます。
ドキュメント ベースのアプリケーションでは、ドキュメント インスタンスから直接コンテキストを取得できます。
これが何を意味するのか分からないと言うのは恥ずかしい。ドキュメント インスタンスからコンテキストを取得するにはどうすればよいですか? ある種のグローバル変数ですか?どんな助けでも大歓迎です。