NSPredicate使用Core Data实体的属性

时间:2012-09-19 04:24:44

标签: iphone ios ipad core-data nspredicate

我有人和团队实体,很多人都可以属于团队。我正在尝试使用此人的姓名和团队名称来创建NSPredicate。因此,此请求将检查核心数据中是否已有一个人数为N且属于团队T.但是,我无法使谓词工作,以便我可以获得TEAM'用于比较的属性。

我目前的谓词如下:

request.predicate = [NSPredicate predicateWithFormat:@"(team.name LIKE %@) AND (number == %@)", [[personInfo objectForKey:PLAYS_FOR] name], [personInfo objectForKey:PERSON_NUMBER]];

在我看来,谓词的第一部分(team.name LIKE%@)就是问题所在。任何帮助,将不胜感激!谢谢!

2 个答案:

答案 0 :(得分:0)

尝试:

[NSPredicate predicateWithFormat:@"(name ==[c] %@) AND (number == %@)", [[personInfo objectForKey:PLAYS_FOR] name], [personInfo objectForKey:PERSON_NUMBER]];

答案 1 :(得分:0)

您需要团队实体与玩家实体之间的关系。

1名队员1队,1队队员很多。

这就是为什么在玩家enity中添加关系并检查 player.team ==%@ AND player.number ==%d