ゲームと呼ばれるエンティティとチームと呼ばれるエンティティの 2 つがあります。ゲーム エンティティには、チームと呼ばれるチームとの対 1 関係があり、チーム エンティティには、ゲームと呼ばれるゲームとの対多関係があります。(チームは多くのゲームに参加できますが、ゲームには 1 つのチームしか参加できません。対戦相手には別のエンティティを使用しています)
ID を使用してチームを選択しています。Games エンティティにチームを追加するためのコードは次のとおりです。
Games *newGame = (Games *) [NSEntityDescription insertNewObjectForEntityForName:@"Games" inManagedObjectContext:self.managedObjectContext];
NSFetchRequest *fetchTeams = [[NSFetchRequest alloc] init];
NSEntityDescription *fetchedTeam = [NSEntityDescription entityForName:@"Teams"
inManagedObjectContext:self.managedObjectContext];
[fetchTeams setEntity:fetchedTeam];
NSArray *fetchedTeams = [self.managedObjectContext executeFetchRequest:fetchTeams error:&error];
for (Teams *myTeam in fetchedTeams) {
if (myTeam.teamID == teamid){
newGame.teams = myTeam;
}
}
私が得ているエラーは次のとおりです:「NSInvalidArgumentException」、理由:「ALL または ANY 演算子の左側は、NSArray または NSSet でなければなりません。
わかりません。 newGame.teams は Teams のオブジェクトであり、NSSet ではありません。Teams.games を実行していた場合、それは NSSet になります。
私は何を間違っていますか?