我需要製作出現在我的購物車上的產品列表。 所以我有這個數據模型: 如何根據第三級關係過濾核心數據提取請求
我的想法是讓有由SKU產品一cartItem,使這個「產品目錄」的所有產品。
我的問題是最好的辦法是什麼?
我試圖讓一個fetchRequest商品實體並應用此NSPredicate:
NSPredicate *predicate = [NSPredicate predicateWithFormat:[NSString stringWithFormat:@"sku.cartItem IN %@", cartItemArray]];
錯誤我得到這個錯誤:
2013-10-29 15:08:10.860 Prototipo[85766:70b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Unable to parse the format string "sku.cartItem IN ( " (entity: CartItem; id: 0x8aa2820 ; data:)", " (entity: CartItem; id: 0x8aa2830 ; data:)", " (entity: CartItem; id: 0x8aa2840 ; data:)", " (entity: CartItem; id: 0x8aa2850 ; data:)", " (entity: CartItem; id: 0x8aa2860 ; data:)", " (entity: CartItem; id: 0x8aa2870 ; data:)", " (entity: CartItem; id: 0x8aa2880 ; data:)", " (entity: CartItem; id: 0x8aa2890 ; data:)", " (entity: CartItem; id: 0x8aa28a0 ; data:)", " (entity: CartItem; id: 0x8aa28b0 ; data:)", " (entity: CartItem; id: 0x8aa28c0 ; data:)", " (entity: CartItem; id: 0x8aa28d0 ; data:)", " (entity: CartItem; id: 0x8aa28e0 ; data:)")"'
太謝謝你了。 感謝您的關注。
----- ----- X
EDIT(解決)
爲了幫助別人,並總結了解決方案,它不能使用[的NSString stringWithFormat :@ ...],正確的方法是直接使用[NSPredicate predicateWithFormat:@「...」,參數]。
只是另一個提示!如果你有同樣的問題,需要得到過濾的N級的一些數據,可以使用任何+ IN謂詞:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"ANY sku.cartItem IN %@", cartItemArray];
謝謝@danielbeard。 –