ios - 无法创建新的模型版本

标签 ios xcode core-data database-migration

我有一个旧项目(为 iOS4 制作)。 我现在正在升级它并尝试将模型版本添加到我的核心数据模型。

当我尝试从 Xcode 菜单添加版本时,它只是创建了一个新版本的模型,并没有创建 .modeld 包。

我尝试手动更改它,但它会导致很多问题并且迁移失败。

  1. 为什么不允许我创建 .modeld 文件?
  2. 知道如何克服这个问题吗?

这是来自 Xcode navigator 的图像 -

enter image description here

虽然它应该是 -

enter image description here

非常感谢

最佳答案

  1. Xcode 总是会为新模型创建一个 .xcdatamodel 文件 版本。 .xcdatamodeld 是版本分组的文件包 模型的。
  2. 您可以采取一种解决方法:

    • 创建一个新的数据模型 (File > New > File... > Core Data > Data Model) 并为模型指定与当前版本相同的名称(例如 jerusalemBiblicalZoo)。
    • 在 Finder 上显示创建的jerusalemBiblicalZoo.xcdatamodeld
    • 右键单击该文件并选择 Show Package Contents,这样您将在其中看到一个 .xcdatamodel 文件。
    • 用旧的 .xcdatamodel 文件覆盖它。然后,您将拥有使用旧单一模型版本的新数据模型结构。

关于ios - 无法创建新的模型版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23693987/

相关文章:

ios - App Store由于UIRequiredDeviceCapabilities键而拒绝了App

ios - 将 Web 服务响应数据分配给 NSManagedObject 子类

ios - 计算核心数据实体的属性

ios - 我应该怎么做才能使 iOS 中所有 UI 控件的大小通用?

ios - 在 Customize UIView 上添加 subview 效果不如预期

objective-c - 带有嵌入式帽插图的可调整大小的图像资源

ios - Xcode 8每次都重新编译完整代码

ios - 手动使用 Segue

ios - 在 iOS 中向用户显示之前修改通知数据

ios - TabBar 项目 - 表格 View 中的核心数据