2011-08-02 22 views
0

私は自身との関係を持つエンティティを持っています。 私は子どもという名前の多対一関係を宣言しました。そして、1対1という名前の親。自己参照関係のCoreDataエラー

children - Property - parent 
parent - Property - children 

次に、xcodeでクラスを生成しました。特に、新しいChildrenオブジェクトを追加しようとすると失敗します。私が得る典型的なメッセージで認識されていないセレクタ:これはこれは私がそれはNSStringののaddObjectのようなメッセージが表示されて失敗したエンティティ

NSEntityDescription *entityProperty = [[self.managedObjectModel entitiesByName] objectForKey:@"Property"]; 
    WZMDXProperty *p = [[WZMDXProperty alloc] initWithEntity:entityProperty insertIntoManagedObjectContext:self.managedObjectContext]; 

を作成する方法であるコード

- (void)addChildrenObject:(WZMDXProperty *)value {     
    NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value count:1]; 
    [self willChangeValueForKey:@"children" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects]; 
    [[self primitiveValueForKey:@"children"] addObject:value]; // <<--FAILS HERE !!!! 
    [self didChangeValueForKey:@"children" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects]; 
    [changedObjects release]; 
} 

の関連作品ですあまりにも早くリリースされたオブジェクトで。 keyのプリミティブな値は、NSSetではなく他のオブジェクトに与えるようです。 私はインスペクタで試しましたが、私はエラーを見つけることができませんでした。

答えて

0

これはまあまあですが、 "子供"を@ "子供"に置き換えようとしたことがありますか? コードセグメントを除いてここに「子供」を使用しています

+0

質問には誤植です.xcodeにはすべて小文字です。私は訂正しました。 – Leonardo