【问题标题】:how to filter all the posts that don't have one of the IDs in the favoiritePosts array?如何过滤所有在 favoiritePosts 数组中没有 ID 之一的帖子?
【发布时间】:2011-09-26 09:33:45
【问题描述】:

我想过滤所有在 favoritePosts 数组中没有 ID 之一的帖子。 我试过了,但它不起作用:

[NSPredicate predicateWithFormat:@"postID IN %@",favoritesPosts_];

我收到此错误:'无效谓词:nil RHS'

关于如何正确编写谓词的任何想法?

数组由一个 NSNumber 对象组成,我想用这个谓词过滤我的 tableview 的 fetchResultController。 Post 对象有一个 NSNumber 类型的 PostID 属性。

也许那不是这样做的方法.. 目标是在由 fetchResultsController 控制的 tableview 中仅显示其 id 在 favoritesPosts_ 数组中的帖子。因此,如果有人对如何做到这一点有不同的想法,我将不胜感激。

【问题讨论】:

  • 没有找到答案...
  • 也许你应该给我们更多信息,比如你的数组的结构和存储在其中的对象
  • 那太容易了;) 无论如何,数组是由一个 NSNumber 对象组成的,我想用这个谓词过滤我的 tableview 的 fetchResulteController。 Post 对象有一个 NSNumber 类型的 PostID 属性。

标签: iphone objective-c core-data predicate


【解决方案1】:

如果 favoritesPosts_ 是一个包含帖子 ID 的字符串数组,那么您可以很好地使用您创建的谓词,

predicateWithFormat:@"postID IN %@", favoritesPosts_];

但如果 favoritesPosts_ 包含具有属性的对象,例如 postID,那么您的谓词应该是,

predicateWithFormat:@"postID IN %@", [favoritesPosts_ valueForKey:@"postID"]];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-05
    • 2012-11-08
    • 1970-01-01
    • 2016-09-12
    相关资源
    最近更新 更多