我正在更新现有应用,并希望创建新的模型版本。
看起来xCode创建了一个新模型,而不是创建一个版本(见截图),这样我就无法更改当前模型,这对我来说是错误的。
这就是假设的样子 -
而且我没有看到更改当前版本的选项。 测试其他项目看起来没问题,所以我不认为这是xCode。
任何想法为什么会发生这种情况?
由于 沙尼
答案 0 :(得分:0)
这里要注意两件事......
数据模型版本具有图标 -
数据模型版本的扩展名为.xcdatamodel
。
数据模型包显示图标 -
数据模型包的扩展名为.xcdatamodeld
。请注意最后的 d 。
数据模型包包含数据模型的所有版本,使其能够对任何先前版本的数据模型进行轻量级迁移,包括最新的模型版本。
看来您的模型版本没有数据模型包容器/包装器。据我了解这个过程,您的版本必须包含在一个包中。
您可能需要在此处完成以下两个流程之一...
处理一个
查找扩展名为.xcdatamodeld
的原始数据模型包,其中包含所有以前的模型版本。
如有必要,请将整个包复制到您的项目中。
然后准备代码以迁移到新的数据模型。
处理二
如果您无法找到或无法访问原始数据模型包,则可能需要重建数据模型,同时牢记现有用户的数据存储。
“通配符”选项
我没有尝试过,但尝试将您的版本文件名重命名为jerusalemBiblicalZoo.xcdatamodeld
可能是值得的。然后再次尝试@ LyndseyScott的建议。这可以为您节省一些时间。
答案 1 :(得分:0)
我最近遇到过这个问题,@ andrewbuilder的回答给了我实现它的提示。
只需转到项目导航器并删除对.xcdatamodel
个文件的引用。然后,在finder中,拖动您的.xcdatamodeld
文件(确实是包)并将其放在项目导航器中。这应该照顾你的问题。