0

我有一组需要过滤的对象。我知道我应该使用 NSPredicate ,但似乎无法在另一个对象内部找到通过对象中的字符串进行过滤的答案。

这是数组的单个对象的样子:

{
    "data_center"
    {
        "id":1,
        "site_id":17,
        "name":"Building",
        "shortname":"ORL-Building",
        "created_at":"2011-10-28T06:32:39Z",
        "updated_at":"2011-10-28T06:32:39Z",
        "site":
        {
            "id":17,
            "name":"Orlando",
            "shortname":"ORL"
        }
    }
}

如何在嵌套对象中使用 Site.name 过滤数组?数组本身是一个 NSArray,它需要 filtersArrayUsingPredicate:。

另外,我找到数据来过滤数组的方式是从 UIPickerView 中提取它,所以我必须检索从不同的pickerview中使用的对象,并根据站点名称的字符串过滤第二个数组.

我似乎无法找到一个好的答案,如果有人有任何建议,我将不胜感激。

4

1 回答 1

3

谓词可以使用键路径导航到数据结构中,因此您可以执行以下操作:

@"data_center.site.name LIKE %@", name

您还可以查看 usingenumerateObjectsUsingBlock:来构建您感兴趣的项目列表。

于 2013-10-22T14:25:12.273 回答