objective c - RestKit - Not key value coding-compliant -
i have managed object myentity
use without problem throughout application.
@interface myentity : nsmanagedobject @property (nonatomic, retain) nsstring *code; @property (nonatomic, retain) nsnumber *def_value; @property (nonatomic, retain) nsstring *label; @property (nonatomic, retain) nsstring *link_label; @property (nonatomic, retain) nsnumber *order; @end
i have web service http://my_server/myentity
returns me:
[ { code: "type", label: "administrative", order: "3", def_value: "0", link_label: "" }, { code: "topic", label: "ndf", order: "1", def_value: "0", link_label: "administrative" }, { code: "topic", label: "report", order: "2", def_value: "1", link_label: "administrative" }, { code: "topic", label: "other", order: "3", def_value: "0", link_label: "administrative" }, ... ]
i'm trying map , fetch list
nsurl *baseurl = [nsurl urlwithstring: @"http://my_server"]; nsstring *objname = @"myentity"; nsmanagedobjectmodel *managedobjectmodel = [nsmanagedobjectmodel mergedmodelfrombundles:nil]; rkmanagedobjectstore *managedobjectstore = [[rkmanagedobjectstore alloc] initwithmanagedobjectmodel:managedobjectmodel]; [rkmanagedobjectstore setdefaultstore:managedobjectstore]; [managedobjectstore createpersistentstorecoordinator]; rkobjectmanager *objectmanager = [rkobjectmanager managerwithbaseurl: baseurl]; rkentitymapping *objmap = [rkentitymapping mappingforentityforname:objname inmanagedobjectstore:managedobjectstore]; [objmap addattributemappingsfromdictionary: @{ @"code": @"code", @"label": @"label", @"order": @"order", @"def_value": @"def_value", @"link_label": @"link_label", }]; rkresponsedescriptor *responsedescriptor = [rkresponsedescriptor responsedescriptorwithmapping:objmap pathpattern:nil keypath:nil statuscodes:rkstatuscodeindexsetforclass(rkstatuscodeclasssuccessful)]; [objectmanager addresponsedescriptor:responsedescriptor]; [objectmanager getobjectsatpath:objname parameters:nil success:^(rkobjectrequestoperation *operation, rkmappingresult *mappingresult) { nslog(@"ok"); } failure:^(rkobjectrequestoperation *operation, nserror *error) { nslog(@"ko"); }];
it's giving me error
i restkit.network:rkhttprequestoperation.m:185 get
'http://my_server/myentity'
(200 ok) coredata: error: failed call designated initializer on nsmanagedobject class 'myentity'
terminating app due uncaught exception 'nsunknownkeyexception', reason:
'[ valueforundefinedkey:]: entity (null) not key value coding-compliant key "link_label".'
i saw error on 2 or 3 questions each different problem , seem not of mine.
can me debug ?
you need configure objectmanager
:
objectmanager.managedobjectstore = managedobjectstore;
you aren't completing core data stack initialisation:
[managedobjectstore createmanagedobjectcontexts];
Comments
Post a Comment