Core data 使用coredata在xcode 4.2中插入多对多关系

Core data 使用coredata在xcode 4.2中插入多对多关系,core-data,insert,many-to-many,xcode4.2,Core Data,Insert,Many To Many,Xcode4.2,嗨,我正在尝试插入多对多关系,但失败=( 这是密码 h类 #import <Foundation/Foundation.h> #import <CoreData/CoreData.h> @class SubCategoria; @interface Categoria : NSManagedObject @property (nonatomic, retain) NSNumber * id; @property (nonatomic, retain) NSStrin

嗨,我正在尝试插入多对多关系,但失败=(

这是密码

h类

#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>

@class SubCategoria;

@interface Categoria : NSManagedObject

@property (nonatomic, retain) NSNumber * id;
@property (nonatomic, retain) NSString * nombre;
@property (nonatomic, retain) NSSet *subcategoria;
@end

@interface Categoria (CoreDataGeneratedAccessors)

- (void)addSubcategoriaObject:(SubCategoria *)value;
- (void)removeSubcategoriaObject:(SubCategoria *)value;
- (void)addSubcategoria:(NSSet *)values;
- (void)removeSubcategoria:(NSSet *)values;

@end
然后,我尝试以以下方式插入

 NSManagedObjectContext *context = [self managedObjectContext];
    Categoria *cat = [NSEntityDescription
                                      insertNewObjectForEntityForName:@"Categoria" 
                                      inManagedObjectContext:context];

    cat.id =[NSNumber numberWithInt:2];
    cat.nombre = @"portatil";




    SubCategoria *subCat =  [NSEntityDescription
                             insertNewObjectForEntityForName:@"SubCategoria" 
                             inManagedObjectContext:context];
    subCat.id = [NSNumber numberWithInt:1];
    subCat.nombre = @"toshiba";

    SubCategoria *subCat2 = [NSEntityDescription
                             insertNewObjectForEntityForName:@"SubCategoria" 
                             inManagedObjectContext:context];

    subCat2.id =[NSNumber numberWithInt:1];
    subCat2.nombre = @"sony";



    [cat addSubcategoriaObject:subCat];


     [cat addSubcategoriaObject:subCat2];

  NSError *error;
    if (![context save:&error]) {
        NSLog(@"Whoops, couldn't save: %@", [error localizedDescription]);
    }
它插入类别和子类别,但当它试图插入关系时,给我这个例外

 -[Categoria subcategoria]: unrecognized selector sent to instance 0x6dd8290
为什么会发生这种错误?????
非常感谢。

听起来您的
分类
实体没有
子类别
属性。请仔细检查您的模型。可能您键入了错误的内容

在您的代码中,什么是

NSLog(@"%@", cat);

输出?

听起来您的
Categoria
实体没有
subcategoria
属性。请仔细检查您的模型。可能您键入了错误的内容

在您的代码中,什么是

NSLog(@"%@", cat);

输出?

嘿,我解决了这个问题,不知道实际情况如何,但我怀疑在多对多的关系中,我没有检查级联字段(我知道这没有多大意义,因为这是一个用于删除的级联)。任何方法都有效,可能我只是需要重新生成de模型。但是,谢谢。我解决了问题,不知道实际如何解决,但我怀疑在多对多的关系中,我没有检查级联字段(我知道这没有多大意义,因为是用于删除的级联).任何方法都有效,也许我只是需要重新生成de模型。但非常感谢