我在一个只有父项和子项[一对多]的项目中使用了 coredata,cd 将为 NSManagedObject 生成 entity.h 和 entity.m,[ok] 问题是在我之前的项目中,addCategToEntityObject
在我的 entityMother 。他的
- (void)addCategToEntityObject:(NSManagedObject *)value;
它工作正常,
但在我的新项目中, entityMother.h 的 CoreDataGeneratedAccessors 是
- (void)addTo_InterestObject:(Interest *)value;
所以我使用一种相同的方法来保存,但现在得到一个警告,并且在运行时崩溃了![但是如何解决它!]
警告:从不同的 Objective-C 类型传递 'addTo_InterestsObject' 的参数 1 时,不兼容的 Objective-C 类型'struct NSManagedObject *',预期的'struct Interest *'
这里是保存问题的操作:-(IBAction)saveInterest:(id)发件人{
NSManagedObject *newItem;
NSManagedObjectContext *contextCateg_ = [categ_ managedObjectContext];
NSLog(@"el contexto :%@",contextCateg);
newItem = [NSEntityDescription insertNewObjectForEntityForName:@"Interest" inManagedObjectContext:contextCateg_];
[categ_ addTo_InterestObject:interest_]; //vooddoo! un mensaje del mas alla!
//OJO, COREDATA ME GENERA UN - (void)addTo_InterestObject:(Interest *)value;
// EN LUGAR De NSManagedObject,
[newItem setValue:item_new.text forKey:@"interest"];
NSError *error;
[context save:&error];
NSLog(@"ITEM saved");
在.h
#import <UIKit/UIKit.h>
@class Categories, Interest;
@class EventMAppDelegate;
@class editContactViewController;
@interface BackEndViewController : UIViewController <UITableViewDelegate, UITableViewDataSource, NSFetchedResultsControllerDelegate> {
Categories *categ_; //objetos de los Entities
Interest *interest_;
NSManagedObjectContext *contextCateg;