2011-07-12 56 views
1

比如我有這樣核心數據查詢1 <-->> 2 <<--> 3.如何從3中獲取1?

Entity: Store      Entity: Inventory   Entity:Product 
Attribute: name     Attribute: qty    Attribute: name 
Relationship: inventories <---->> Relationsips: <<----> Relationship: inventories 
             stores 
             products 

我想知道如何從具體產品的商店的核心數據列表檢索數據模型。 我有產品的tableView和點擊精確的產品單元格我想移動到另一個控制器與商店的列表包含此產品。

據我所知,我可以先獲得所有Inventory實體的NSSet並迭代它以獲取商店。但是我認爲Core Data是更智能的事情,它存在更簡單更優雅的方法。例如,也許當我得到所有庫存對象時,我可以使用謂詞somethink這樣的「Store.inventories IN(我之前獲取的庫存數組)」來獲取Store。或者更簡單的方法。謝謝!

回答

0

隨着核心數據 - 作爲一般規則 - 當您手中有一個託管對象時,從該對象開始並導航模型以檢索相關實體。具體來說:

// if @"stores" is the name of the relationship in Inventory: 
NSSet *stores = [product.inventories valueForKey:@"stores"]; 
相關問題