Xcode Mac OS X中单个文档应用程序的核心数据

Xcode Mac OS X中单个文档应用程序的核心数据,xcode,macos,core-data,Xcode,Macos,Core Data,我试图在一个非基于文档(单协调器)的应用程序中使用CoreData。我到处寻找一个好的例子,并测试了几种不同的方法,但作为MacOSX开发的新手,我一直找不到任何有效的方法 基本上,我有一个应用程序,其中一个NSTableView列出了几个条目,每个条目都可以编辑并保存相关数据。数据不是基于文档的,但应该存储在某种“中央存储”中。我已经很好地设置了模型,可以手动填充表中的项目。问题仅仅在于:我如何使用CoreData持久保存数据,以便下次应用程序启动时可以再次加载数据 这里有一行很好的总结,我在

我试图在一个非基于文档(单协调器)的应用程序中使用CoreData。我到处寻找一个好的例子,并测试了几种不同的方法,但作为MacOSX开发的新手,我一直找不到任何有效的方法

基本上,我有一个应用程序,其中一个NSTableView列出了几个条目,每个条目都可以编辑并保存相关数据。数据不是基于文档的,但应该存储在某种“中央存储”中。我已经很好地设置了模型,可以手动填充表中的项目。问题仅仅在于:我如何使用CoreData持久保存数据,以便下次应用程序启动时可以再次加载数据

这里有一行很好的总结,我在寻找什么: “这些应用程序通常具有由单个控制器对象管理的单个核心数据堆栈(由单个持久存储协调器定义)。它们通常为整个应用程序使用单个持久存储。”


有没有好的教程或快速代码示例可以让我了解如何做到这一点?

Tim Isted提供了一个很棒的示例。在这一系列文章中,作者解释了如何使用CoreData构建鞋盒应用程序,如何支持撤消、多个托管对象上下文等。您可能需要调整源代码以适应现代Cocoa环境,但这应该是完全值得的。

为什么不创建一个新的xcode项目,选择cocoa应用程序并检查use core data标志,但不检查基于文档的标志,然后查看生成了什么xcode


要么在项目中复制该模板,要么在新模板中移动现有代码。

Xcode中的默认模板通常已经过时,不适合发布应用程序。此外,至少有一次您必须从地面构建CoreData堆栈:)当然。但是,如果像OP一样,你不知道从哪里开始,研究模板通常是一个非常好的主意。模板的问题在于,有些人生成模板并只是使用它们,而没有真正研究和理解它们是如何工作的。我不是建议直接使用它,我建议他创建它,然后看看代码。哇。愚蠢的错误。我可以发誓我创建的应用程序检查了CoreData,但我没有。这就是我没有示例代码的原因。该死,在这上面浪费了几个小时…:/