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];
しかし、私は例外を取得します..
ご協力ありがとうございました!