我正在使用核心数据创建os x app。当我修改模型。发生的错误显示在图像中。显示的原因是"用于打开商店的模型与用于创建商店的模型不相容&#34 ;;如何解决此错误。我在iOS应用程序中清除模拟器修复了同样的错误。如何在os x app中解决这个问题。
答案 0 :(得分:0)
如果您查看设置persistentStoreCoordinator
的代码,它应该告诉您对象的存储位置和文件名。 (Apple模板的默认位置由app delegate中的applicationDocumentsDirectory
方法提供。)
答案 1 :(得分:0)
非基于文档的Core Data应用程序的数据存储的常用位置在~/Library/Application/Support/com.mydomain.myapp/CocoaAppCD.storedata
。
重命名或删除此文件(取决于其内容是否为一次性用途)。
重新启动您的应用程序将重新创建没有数据的文件,您可以根据新模型重新填充它。
对于应用程序的生产版本,模型更改需要正式的轻量级或大量迁移才能保留用户的数据。
答案 2 :(得分:0)
为方便起见,我在启动时将数据库的位置打印到控制台,如下所示:
// Get / print location of database for use in testing / debugging
let paths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)
let path = paths[0] + "/LocalStore.sqlite"
print(path.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines))
除了容易看到之外,我可以选择/复制/过去在sqliteBrowser中使用。
答案 3 :(得分:-1)
选择Finder并通过单击键盘上的选项按钮转到Library from Go。然后使用您的应用程序Bundle Identifier搜索库。用它删除文件夹。然后重新启动您的应用程序将重新创建没有数据的文件夹,您可以根据新模型重新填充它。