Основные данные: абстрактная сущность в запросе на выборку

Предположим, у меня есть модель Core Data с абстрактная сущность с именем «Животное». Затем у меня есть много других сущностей, которые наследуются от этой абстрактной сущности: «Лев», «Собака», «Кошка» и т. д. (я не разрабатываю зоопарк программа, но эта аналогия хорошо работает для проблемы, которую я объясняю!)

Я хочу знать следующее: могу ли я получить "всех животных" сразу, выполнив следующее:

NSFetchRequest *searchRequest = [[NSFetchRequest alloc] init];
[searchRequest setEntity:[NSEntityDescription entityForName:@"Animal" inManagedObjectContext:aContext]];

NSArray *matchedObjects = [aContext executeFetchRequest:searchRequest error:nil];

Я понимаю, что в NSEntityDescription есть методы для определить, наследуется ли объект от другого. Но есть ли быстрый способ получить все объекты определенного (абстрактного) типа - в данном случае «Животное»?

Если описанный выше подход недействителен, что самый эффективный способ сделать это? Спасибо!

31
задан Bryan 14 June 2011 в 03:48
поделиться