似乎有一些关于在基于文档的应用程序中使用Core-data的信息。我有一个窗口控制器在当前文档中运行模式窗口。用户将数据输入到文本字段中,该字段创建一个可变的字符串数组,我想用它来创建模型对象(用于多对多关系),然后将它们保存到核心数据堆栈中。这是我在模态窗口控制器中的方法。从哪里获得NSPersistentDocument中的托管对象上下文?
- (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。我不明白的是如何访问文档的MOC。苹果的文档有点不清楚。
获取管理对象的上下文
在OS X:
在单协调的应用程序,你可以从应用程序委托直接将应用程序的上下文。
在基于文档的应用程序中,您可以直接从文档实例获取上下文。
我很尴尬地说我不知道这是什么意思。如何从文档实例获取上下文?它是某种全局变量吗?任何帮助是极大的赞赏。
对不起,回复/确认已晚。这钉了它!我认为这将是我忽略的一件非常简单的事情。 Newb失败。非常感谢! –