2013-01-08 68 views
1

假設我已經檢索到一個託管對象數組(對象數組爲Car)。可以說一個Car有像makemodel屬性。 Car s當前位於NSArray搜索NSManagedObjects數組

我如何才能找到honda值爲make屬性的所有車?

回答

5

NSPredicateUsing Predicates with Key-Paths

因此,舉例來說:

NSString *trendName = @"honda"; 
NSPredicate *predicate = [NSPredicate predicateWithFormat: 
     @"trend like %@", trendName]; // or "trend == %@" 

NSArray *filteredArray = [results filteredArrayUsingPredicate:predicate]; 

其中trend是您Car管理對象的字符串屬性。

+0

真棒,不知道你可以使用nspredicate即使不在coredata –

+1

@ waf04 P.S.趨勢是相等的。我第一次沒有注意到。 ;) –

+0

如果汽車有一組汽車零件,我想找到一輛匹配某個汽車零部件的汽車。因此,汽車必須具備汽車零部件(車輪,輪胎等)。我如何構建謂詞以查看其中的內容? –

2

使用NSPredicate搜索/過濾槽陣列。

NSString *modelName = @"honda"; 
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"model == %@", modelName]; 
NSArray *filteredArray = [results filteredArrayUsingPredicate:predicate]; 
+1

移除謂詞行末尾的註釋;-)乾杯 –

+0

謝謝!忘了那個.. –

+0

沒問題。乾杯。 –