我之前知道你需要“编辑”> “创建NSManagedObject子类”以便在类中引用Core Data的实体名称。但是在创建这些自动子类后,我遇到了一些错误。
我的项目运行良好没有这些子类文件,所以Swift 3不再需要子类化来引用实体吗?
答案 0 :(得分:1)
在Swift 3中,您不需要为NSManagedObject
手动创建子类。
默认情况下,它们是自动创建的。但是,如果您想手动创建文件,请在“公用设施”区域为Codegen
设置Manual/None
至testCD.xcdatamodeld
。
来自Apple的What's new in Core Data:
Xcode自动子类生成
Xcode现在支持在建模工具中自动生成NSManagedObject子类。在实体检查员中:
- 手动/无是默认和以前的行为;在这种情况下你 应该实现自己的子类或使用NSManagedObject。
- 类别/扩展在名为like的文件中生成类扩展 类名+ CoreDataGeneratedProperties。你需要申报/实施 主类(如果在Obj-C中,通过标题扩展可以导入 名为ClassName.h)。
- Class Definition生成名为ClassName + CoreDataClass的子类文件以及为Category / Extension生成的文件。
生成的文件放在DerivedData中,并在保存模型后在第一个版本上重建。它们也被Xcode索引,因此命令单击引用并按文件名快速打开。