【问题标题】:iPhone Core Data how to update the NSManagedObjects .h & .m after making changes to the data modeliPhone Core Data 如何在更改数据模型后更新 NSManagedObjects .h & .m
【发布时间】:2010-04-18 01:48:20
【问题描述】:

我已经制作了一个数据模型,现在我制作了第二个版本。映射到该数据模型的所有生成的 NSManagedObjects 都是版本 1。有什么方法可以将它们更新到 v2 而不删除它们然后说重新生成它们?

【问题讨论】:

    标签: iphone objective-c core-data ipad


    【解决方案1】:

    如果您有两个版本的模型,您需要在两个版本之间创建一个映射模型,或者如果更改足够简单,Core Data 可以解决,您需要打开自动迁移。

    我建议查看 Apple 关于核心数据迁移主题的文档。

    更新

    我正在使用自动迁移。但是假设我在 v1 中有一个人员条目,它只是姓氏和名字。在 v2 中,我添加了出生日期。在制作 v1 的数据模型后,我告诉 Xcode 生成 NSManaged 对象(在本例中为 Person.m),现在我已经制作了带有自动迁移设置的 v2 模型。如何更新 Person.m 以添加 DOB 而无需删除然后再次添加,或手动添加 DOB?

    NSManagedObject 已经有它了,如果你想添加属性(而不仅仅是属性),那么只需在你的NSManagedObject 子类中输入两行代码。

    更新

    我强烈推荐的其他选项是使用 mogenerator 而不是内置的代码生成器。 mogenerator 将在模型更改后使文件保持最新。

    【讨论】:

    • 我正在使用自动迁移。但是假设我在 v1 中有一个人员条目,它只是姓氏和名字。在 v2 中,我添加了出生日期。在制作 v1 的数据模型后,我告诉 Xcode 生成 NSManaged 对象(在本例中为 Person.m),现在我已经制作了带有自动迁移设置的 v2 模型。如何更新 Person.m 以添加 DOB 而无需删除然后再次添加,或手动添加 DOB?
    猜你喜欢
    • 2014-05-27
    • 1970-01-01
    • 2015-01-19
    • 1970-01-01
    • 2021-08-20
    • 2020-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多