假设我有一个核心数据模型,其中摘要实体称为“动物”。然后,我有许多其他实体继承这个抽象实体:“狮子”,“狗”,“猫”等(我没有开发动物园计划,但这个比喻适用于我解释的问题!)核心数据:提取请求中的抽象实体
我想知道的是:我可以通过这样一次获取“所有动物”:
NSFetchRequest *searchRequest = [[NSFetchRequest alloc] init];
[searchRequest setEntity:[NSEntityDescription entityForName:@"Animal" inManagedObjectContext:aContext]];
NSArray *matchedObjects = [aContext executeFetchRequest:searchRequest error:nil];
我理解上有NSEntityDescription方法来确定一个实体是否从另一个继承。但是,是否有一种快速方法来获取特定(抽象)类型的所有实体 - 在这种情况下,“动物”?
如果上述方法无效,那么最有效的方法是什么?谢谢!
谢谢! (我很抱歉缺少那部分文档,几个小时后,它们都开始一起运行。) – Bryan 2011-06-14 03:50:13
[This](http://stackoverflow.com/a/6920736/832111)答案让我相信“Entity继承“并不是正确的选择。 – 2013-08-18 19:45:51
@ d.ennis这里的问题是“我可以一次抓取所有的动物......”,而不是“我可以让我的所有实体继承我的模型中的一个”全局“抽象实体吗?实体继承有其合理的用途,它可以是非常有用的。滥用它可以使你很好地放弃这些优点。 – octy 2013-08-20 15:28:19