2010-07-30 72 views
0

我正在研究一個簡單的核心數據應用程序。我有兩個類:ClientHome。有客戶端和院(即客戶可以有很多家。在其他屬性中,Home類有一個叫purchaseDate核心數據 - 簡單查詢問題

我試圖寫在Client類的兩種方法之間的一個一對多的關係:-homesByDate和 - firstHome-homesByDate返回值應該是一個NSArray或NSSet中的客戶端的家中通過purchaseDate排序-firstHome應該只返回第一家客戶端購買

我知道,給一個客戶端,我可以用self.homes來。訪問所有客戶的家園,但我如何實現上述方法?這是否涉及應用某種類型NSPredicate?

幫助!謝謝!

回答

2

您需要NSSortDescriptor

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"purchaseDate" ascending:YES]; 
//Obtain arrayOfHomes however you'd like 
homesByDate = [arrayOfHomes sortedArrayUsingSortDescriptors:[NSArray arrayWithObject:sortDescriptor]]; 
firstHome = [homesByDate objectAtIndex:0]; 

我還要指出的是,這是常見的,讓NSArrayController的爲你做排序(如果,例如,homesByDate僅僅是在一個表或視圖顯示的東西)。您可以使用setSortDescriptors或使用綁定。 (如果您希望用戶能夠從幾個訂單中進行選擇,這也很方便。)

+0

謝謝我的萊格! – 2010-07-30 01:56:02