2

restkit のリレーションシップ マッピングに小さな問題があります。私のモデルには次のような関係があります。

ニュース < -- >> タグ

coredata では、これを次のようにマッピングしました。

ニュース: タグ -> 対多、オプション

タグ: ニュース -> to-one、必須。

今...私は次のようなJSONを持っています:

{
   "news" : {
     "attr1" = "...",
     "tags" = ["tag1, "tag2, ...]
   }
}

この方法でマッピングをセットアップします (ところで、私のタグ エンティティには属性が 1 つしかありません: 値)

RKManagedObjectMapping *tagMapping = [[self class] objectMappingForClass:[Tag class] inManagedObjectStore:managedObjectStore];
    [tagMapping mapKeyPath:@"" toAttribute:@"value"];

RKManagedObjectMapping *newsMapping = [[self class] objectMappingForClass:[News class] inManagedObjectStore:managedObjectStore];
....
[newsMapping mapKeyPath:@"Tags" toRelationship:@"tags" withMapping:tagMapping];

さて... RestKit が News JSON を解析してマップすると、tags 属性が見つかり、正しい値を持つ Tag エンティティのリストが作成されます。また、この配列/セットを News のタグ関係にリンクします。しかし... 私のタグ エンティティはニュース関係が nil に設定されているため、CoreData 検証に合格しません。逆の関係を設定するにはどうすればよいですか? 次のステートメントを追加しようとしました。

[tagMapping mapRelationship:@"news" withMapping:newsMapping];

しかし、私は例外を取得します..

ご協力ありがとうございました!

4

0 に答える 0