次のような Core Data モデルがあります。ここで、子は対多の関係です。
.h
@implementation MyEntity
@dynamic name;
@dynamic children;
@end
.m
@interface MyEntity : NSManagedObject
@property (nonatomic) NSString *name;
@property (nonatomic) NSOrderedSet *children;
@end
次に、次を使用して設定しようとします。
MYAppDelegate *delegate = (MYAppDelegate *)[UIApplication sharedApplication].delegate;
NSManagedObjectContext *managedObjectContext = [delegate managedObjectContext];
NSEntityDescription *categoryEntity = [NSEntityDescription entityForName:@"MyEntity" inManagedObjectContext:managedObjectContext];
NSManagedObject *newCategory = [[NSManagedObject alloc] initWithEntity:categoryEntity insertIntoManagedObjectContext:managedObjectContext];
[newCategory setValue:key forKey:@"name"];
NSOrderedSet *testSet = [[NSOrderedSet alloc] initWithArray:@[@"This", @"is", @"a", @"test"]];
[newCategory setValue:testSet forKey:@"children"];
}
}
しかし、その最後の行で、次のエラーが発生します。
NSCFConstantString managedObjectContext]: インスタンス 0xe8fa0 に送信された認識されないセレクター
コンパイラに変更NSOrderedSet
すると、 .NSSet
NSOrderedSet
セットを に割り当てるにはどうすればよいNSManagedObject
ですか?