objective-c - 重命名 NSManagedObject 类中的核心数据属性

标签 objective-c core-data xcode5

我想重命名属性,sortOrder:

enter image description here

sequence,在 NSManagedObject 类中。 (仅示例说明)

enter image description here

并遵循轻量级迁移的步骤。

enter image description here

挑战在于轻量级迁移实际上并不影响 NSManagedObject 类 (FormItems)。

因此代码仍然使用 sortOrder 属性。我可以通过 XCode 运行重构重命名来更改代码,但这会由于类内的重命名而破坏我的向后数据库兼容性吗?

我在这里误解了什么?

最佳答案

轻量级迁移应该按预期工作。本声明

The challenge is that the Lightweight Migration doesn't actually affect the NSManagedObject class (FormItems).

不一定是真的。它的 LW 迁移应该影响所有更改的实体。

您可以重构代码以使用新名称并

  1. 创建新的模型版本。
  2. 更改为新模型版本后,对属性进行更改。
  3. 确保持久存储具有正确的选项。
    NSMigratePersistentStoresAutomaticallyOption
    NSInferMappingModelAutomaticallyOption

关于objective-c - 重命名 NSManagedObject 类中的核心数据属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25146746/

相关文章:

ios - numberOfItemsInSection的逻辑问题:

cocoa - 在插入时开始编辑

ios - 如何以简单的方式备份没有搜索索引的 CoreData 存储 (SQLite)?

ios - Xcode 非常滞后,有很多 View Controller

ios - 如何随机化数组中的单元格内容

ios - 如何检查 iCloud 中是否有内容?核心数据

聚合函数 : How to include pending changes? 上的 iOS FetchRequest

ios - 迁移到 xcode5 后找不到 stdio.h

ios - 视网膜问题 : how to make UIView to have width exactly 1 of pixel instead of 2 pixels?

ios - 以编程方式滚动 UIScrollView