对CoreData类重新声明无效
我正在使用CoreData,名为“RoleName”的实体。
问题是:我从我的模型中点击“创buildNSManagedObject子类”,所以它会自动为我的实体创build类。
但是,在这个类的声明上,我得到这个错误:
无效的“RoleName”重新声明
即使我没有任何其他同名的class级。
这是因为Xcode自己处理所有这些。 由于自动生成的类没有我所有的属性,所以感觉有点麻烦。
所以请按照以下步骤来获取它:
- 删除已经为核心数据创build的类。
-
将class.Module设置为当前产品模块
-
将Class.codegen设置为Manual / None
-
现在select你的实体并创buildNSmanagedobject子类
-
你们都定了
来自苹果: 核心数据有什么新意
Xcode自动子类生成
Xcode现在支持在build模工具中自动生成NSManagedObject子类。 在实体检查员:
手动/无是默认的,以前的行为; 在这种情况下,您应该实现自己的子类或使用NSManagedObject。 Category / Extension在一个名为ClassName + CoreDataGeneratedProperties的文件中生成一个类扩展。 您需要声明/实现主类(如果在Obj-C中,通过扩展名可以导入的名称为ClassName.h)。 类定义生成名为ClassName + CoreDataClass的子类文件以及为Category / Extension生成的文件。
生成的文件放置在DerivedData中,并在保存模型后在第一个版本上重新生成。 他们也被Xcode索引,所以命令点击引用和快速打开文件名工程。
您不需要手动创buildNSManagedObjects
子NSManagedObjects
。
我build议你删除使用NSManagedObjects
创build的文件(将它们移动到废纸篓),然后转到Codegen
下的DataModel Inspector中的每个实体: Manual / None
然后创build子类。