ios - '+entityForName: nil is not a legal NSManagedObjectContext parameter searching for entity name -


i'm trying add data coredata. code.but i'm getting error.what should in case ?

that viewcontroller.h

@interface loginviewcontroller : uiviewcontroller {     nsmanagedobjectcontext *managedobjectcontext;  }  @property (nonatomic, retain) nsmanagedobjectcontext *managedobjectcontext; @property (readonly, strong, nonatomic) nspersistentstorecoordinator *persistentstorecoordinator; 

and .m file

       person *person = [[person alloc] initwithjsonstring:string];     nsmanagedobjectcontext *context = [self managedobjectcontext];     nsmanagedobjectcontext *object = [nsentitydescription insertnewobjectforentityforname:@"users" inmanagedobjectcontext:context];     [object setvalue:person.name forkey:@"name"];     [object setvalue:person.id forkey:@"userid"];     [object setvalue:person.statu forkey:@"statu"];     [object setvalue:person.token forkey:@"token"];     [object setvalue:person.sonuc forkey:@"sonuc"];  - (nsmanagedobjectcontext *)managedobjectcontext {     if (managedobjectcontext != nil) return managedobjectcontext;      nspersistentstorecoordinator *coordinator = [self persistentstorecoordinator];     if (coordinator != nil) {          managedobjectcontext = [[nsmanagedobjectcontext alloc] init];         [managedobjectcontext setpersistentstorecoordinator:coordinator];     }     return managedobjectcontext; } 

this error.

'+entityforname: nil not legal nsmanagedobjectcontext parameter searching entity name 'users'' 

thanks help

the heart of problem have not thought persistentstorecoordinator comes from, , object never created.

your check, if (coordinator != nil), hiding problem. instead, should aim set things coordinator never nil. check can removed or, better, replaced assertion case: nsassert(coordinator != nil, @"there no persistent store coordinator.").

if persistent store coordinator comes outside view controller, recommend passing part of view controller’s initialisation. if view controller can set persistent store coordinator itself, either part of initialisation or load lazily.