まず、くだらない質問で申し訳ありません。残念ながら、非常に多くの投稿を読んだ後、実装方法がわかりませんでした。そのために残念。では、ここに私の質問があります。私には、地域と国という 2 つのエンティティがあります。各地域は国に属し、すべての国にはいくつかの地域があります。私のアプリケーションでは、国を選択し、そのすべての地域を表示したいと考えています。シンプルにするために、国と地域の両方に属性名があり、地域には「国」という関係があります。ここで、国のすべての地域を選択する必要があります。
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSEntityDescription *desc = [[model entitiesByName] objectForKey:@"Region"];
[request setEntity:desc];
NSSortDescriptor *sd = [NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES];
[request setSortDescriptors:[NSArray arrayWithObject:sd]];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"any country LIKE[c] 'aCountry'"];
[request setPredicate:predicate];
国は関係であり、このため国の名前は関係ではなく、エンティティの国に保存されるため、これは見栄えがしますが、機能しません。次に、別の方法を試しました:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"any Country.name LIKE[c] 'aCountry'"];
これにより、エラーが発生します。
NSInvalidArgumentException'、理由: 'keypath Country.name がエンティティに見つかりません'
さて、私の地域を取得する最良の方法は何ですか?