假設我有一個核心數據模型,其中摘要實體稱爲「動物」。然後,我有許多其他實體繼承這個抽象實體:「獅子」,「狗」,「貓」等(我沒有開發動物園計劃,但這個比喻適用於我解釋的問題!)核心數據:提取請求中的抽象實體
我想知道的是:我可以通過這樣一次獲取「所有動物」:
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