首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSPredicate搜索NSSet

NSPredicate搜索NSSet
EN

Stack Overflow用户
提问于 2013-04-03 17:01:45
回答 1查看 695关注 0票数 1

我一直在环顾四周,看到了与我正在做的类似的例子,但无法让它们工作。我有一个"Product“核心数据实体,它与一个"Manufacturer”实体有多对多的关系。“制造商”有一个我想要搜索的属性"name“。“产品”也有一个属性"isCustomItem“,我也希望搜索它。所以我想要达到的东西是这样的:

Product 1...m Manufacturer.nameProduct.isCustomItem == %0

这是到目前为止我设法收集到的东西:

代码语言:javascript
复制
NSPredicate *p3 = [NSPredicate predicateWithFormat:@"SUBQUERY(manufacturer,$m,$m.name CONTAINS[c] %@) AND (isCustomItem == 0)", searchString];

然而,我一直收到这个错误:

代码语言:javascript
复制
**'Unable to parse the format string "SUBQUERY(manufacturer,$m,$m.name CONTAINS[c] %@) AND (isCustomItem == 0)"'**
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-03 17:10:24

试试这样的..。

代码语言:javascript
复制
NSPredicate *namePredicate = [NSPredicate predicateWithFormat:@"ANY manufacturer.name CONTAINS[c] %@", searchString];
NSPredicate *customPredicate = [NSPredicate predicateWithFormat:@"isCustomItem == 0"];

NSPredicate *compoundPredicate = [NSCompoundPredicate andPredicateWithSubPredicates:@[namePredicate, customPredicate]];

然后使用compoundPredicate过滤你的集合。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15782986

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档