NSPredicate核心数据,获取一些对象

时间:2014-02-24 14:32:59

标签: ios iphone objective-c core-data

我有一个实体,ProductCart&购物车,有很多关系。 ProductCart有一个名为ordered的属性,用于确定产品是否已订购。现在我想获取已经订购的ProductCart中的所有对象。尝试过类似的东西,但它不起作用:

NSFetchRequest *fetchRequest =  [NSFetchRequest fetchRequestWithEntityName:@"ProductCart"];
fetchRequest.predicate = [NSPredicate predicateWithFormat:@"inCart == %@ && !ordered == %@", cart, [self valueForKey:@"ordered"]];

NSSortDescriptor *sortDescriptor =  [[NSSortDescriptor alloc] initWithKey:@"products.name" ascending:YES];
NSArray *sortDescriptors = @[sortDescriptor];
[fetchRequest setSortDescriptors:sortDescriptors];

inCart获取关系,命令给我带来问题。我怎样才能解决这个问题?

1 个答案:

答案 0 :(得分:0)

我希望你的谓词应该更像:

fetchRequest.predicate = [NSPredicate predicateWithFormat:@"inCart == %@ && ordered == NO", cart];

因为您只想测试ordered的状态,而不是尝试将其与其他值进行比较。