CoreDataを使用してiOSアプリケーションを開発しています。
私はこれらの2つのエンティティを持っています:
店
カテゴリー
エンティティからアクセスしようとしていますが、エラーが発生しcategory.name
ます:Shop
- (void)updateDetails:(NSManagedObject *)shop
{
NSLog(@"updateDetails: %@", shop);
if (shop == nil)
return;
self.nameLabel.text = [[shop valueForKey:@"name"] description];
self.categoryLabel.text = [[shop valueForKey:@"category.name"] description];
self.addressLabel.text = [[shop valueForKey:@"address"] description];
self.telephoneLabel.text = [[shop valueForKey:@"telephone"] description];
NSNumberFormatter* f = [[NSNumberFormatter alloc] init];
[f setNumberStyle:NSNumberFormatterDecimalStyle];
NSNumber* acceptRate = [f numberFromString:[[shop valueForKey:@"acceptRate"] description]];
_ratingControl.rating = [acceptRate unsignedIntValue];
}
Shop
次の方法でエンティティを取得します。
NSManagedObjectContext *context = [self managedObjectContext];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Shop"
inManagedObjectContext:context];
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
[fetchRequest setEntity:entity];
NSArray *results = [context executeFetchRequest:fetchRequest error:nil];
しかし、私はこのエラーを受け取ります:
'[<NSManagedObject 0x1cdb4890> valueForUndefinedKey:]: the entity Shop is not key value coding-compliant for the key "category.name".'
このエラーを解決するにはどうすればよいですか?