私の目標は、RestKit との 1 対多および多対 1 の関係接続を実装することです。バージョン 0.20pre6 を使用しています。このページhttp://restkit.org/api/0.20.0/Classes/RKConnectionDescription.html#overviewは半分の例を報告しています。最初の例は多対一です。json:
{ "project":
{ "id": 12345,
"name": "My Project",
"userID": 1
}
}
コード:
NSEntityDescription *projectEntity = [NSEntityDescription entityForName:@"Project" inManagedObjectContext:managedObjectContext];
NSRelationshipDescription *userRelationship = [projectEntity relationshipsByName][@"user"];
RKConnectionDescription *connection = [[RKConnectionDescription alloc] initWithRelationship:userRelationship attributes:@{ @"userID": @"userID" }];
最初の試行で見逃したのは、ユーザー ID もエンティティに含める必要があるということです。それ以外の場合は機能しません。理由はよくわかりません...とにかく動作します。
私の問題は、1 対多の 2 番目の例に関連しています。JSON の例:
{ "project":
{ "id": 12345,
"name": "My Project",
"userID": 1,
"teamMemberIDs": [1, 2, 3, 4]
}
}
コード:
NSEntityDescription *projectEntity = [NSEntityDescription entityForName:@"Project" inManagedObjectContext:managedObjectContext];
NSRelationshipDescription *teamMembers = [projectEntity relationshipsByName][@"teamMembers"]; // To many relationship for the `User` entity
RKConnectionDescription *connection = [[RKConnectionDescription alloc] initWithRelationship:teamMembers attributes:@{ @"teamMemberIDs": @"userID" }];
今... teamMemberIDs は、前の例の userID と同じようにエンティティ定義に含まれている必要があります。ここに私の質問があります:
- teamMemberID は値の配列であるため、どのように定義すればよいですか?
- このことについての実例はありますか?? RestKit ライブラリ内のサンプル ディレクトリには、ネストされた関係のみが表示されます。
- 私は正しくやっていますか?私は何か大きなものを見逃していますか?