Objective c 如何在核心数据中以编程方式创建超级/子类?
我的核心数据模型中有一个名为a、B、C的实体的泛化,比如说,a是一个包含子实体B和C的超类 A不是抽象的,所以如果我创建一个NSManagedObject,我需要创建并关联一个B或C子类对象。我该如何做到这一点?我可以创建实体,但如何告诉模型对象B是对象a的子类(反之亦然?) 注意:我确实以编程方式创建了模型,并且为实体描述“A”正确设置了子实体 这是我前进的可悲尝试。有什么想法吗?如果你能告诉我做这项工作的代码示例,我会得到额外的分数。谢谢Objective c 如何在核心数据中以编程方式创建超级/子类?,objective-c,cocoa,core-data,Objective C,Cocoa,Core Data,我的核心数据模型中有一个名为a、B、C的实体的泛化,比如说,a是一个包含子实体B和C的超类 A不是抽象的,所以如果我创建一个NSManagedObject,我需要创建并关联一个B或C子类对象。我该如何做到这一点?我可以创建实体,但如何告诉模型对象B是对象a的子类(反之亦然?) 注意:我确实以编程方式创建了模型,并且为实体描述“A”正确设置了子实体 这是我前进的可悲尝试。有什么想法吗?如果你能告诉我做这项工作的代码示例,我会得到额外的分数。谢谢 NSEntityDescription *aEnti
NSEntityDescription *aEntity = [[model entitiesByName] objectForKey:@"A"];
NSEntityDescription *bEntity = [[model entitiesByName] objectForKey:@"B"];
A *newA = [[A alloc] initWithEntity:aEntity insertIntoManagedObjectContext:context];
B *newB = [[B alloc] initWithEntity:ATC_Entity insertIntoManagedObjectContext:context];
感谢cocoadev小组回答我的问题 和 基本上,只需将子实体插入到模型中,超级实体就会神奇地出现。如果对
NSManagedObjects
进行子类化,则需要声明要访问的任何属性