我制作了一个数据模型,现在我已经制作了第二个版本.映射到该数据模型的所有生成的NSManagedObject都是版本1.是否有某种方法可以将它们更新为v2而不删除它们,然后说再次生成它们?
如果您有两个版本的模型,则需要在两个版本之间创建映射模型,或者如果更改足够简单以便Core Data解析,则需要启用自动迁移.
我建议查看Apple关于Core Data迁移主题的文档.
我正在使用自动迁移.但是说我在v1中有一个人条目,只是姓氏和名字.在v2中,我添加了出生日期.在制作了v1的数据模型后,我告诉Xcode生成了NSManaged对象(在这个例子中是Person.m),现在我已经建立了自动迁移的v2模型.如何更新Person.m以添加DOB而不删除然后再次添加或手动添加DOB?
该NSManagedObject
会已经有它在那里,如果你想添加的属性(而不是仅仅的属性),那么两行代码,只需键入到您的NSManagedObject
子类.
我强烈推荐的其他选项是使用mogenerator而不是内置代码生成器.mogenerator将在模型更改后使文件保持最新.