我的问题类似于:
Problem creating NSManagedObject derived class
我在Core Data中设置了一个NSManagedObject,并为它提供了一个类.但是,我不想创建一个相同的NSObject类,而是使用NSManagedObject类,但是我不想创建实体并保存它.我只想使用它为一个数组,只有当我需要保存对象在Core Data我想使用insertEntity:
store * store = [[Store alloc] init];
它给我以下错误:CoreData:错误:无法在NSManagedObject类“Store”上调用指定的初始化程序
有没有一种方法可以使用NSManagedObject类/属性来分配或者以某种方式分配我刚刚为表使用的对象?
谢谢.
解决方法
只需使用initWithEntity:insertIntoManagedObjectContext:并传递一个nil上下文,然后在准备好之后调用NSMAnagedObjectContext中的insertObject:
NSEntityDescription *entity = [NSEntityDescription entityForName:@"MyModelClass" inManagedObjectContext:myContext]; id object = [[MyModelClass alloc] initWithEntity:entity insertIntoManagedObjectContext:nil];