2012-07-21 63 views
4

我正在寻找到核心数据的高级部分。我知道它不是SQL,但有一些限制,但是,如何将下面的代码翻译成NSPredicate以便在提取请求中应用?来自核心数据的NSPredicate通过对象ID选择(可能总结)

Product* p = self.product; //this is a managed object 
double vol=0; 
for (PlanningItem* pi in self.planitems) { 
if (pi.product==p) 
    vol+=pi.volume; 
  1. 我想获取具有数p作为其产品的所有计划项目。
  2. 接下来,我想总结该集合的所有卷。

如何在NSPredicate的提取请求中执行1操作? 我可以同时做2次吗?

我在问NSPredicate的字符串。我有能力自己构建Fetchrequest。

Tx!

回答

11
// Create the predicate 
NSPredicate *productPredicate = 
    [NSPredicate predicateWithFormat:@"(product == %@)", product]; 

// Apply the predicate to your FetchRequest 
[fetchRequest setPredicate:productPredicate]; 
+0

我的第一印象是%@将产品挤压成一个字符串,而不是一个对象ID。但它像一个魅力 - tx。 – Vincent 2012-07-22 01:03:02

相关问题