我想使用NSPredicateEditor为用户提供使用复杂布尔逻辑创建自定义过滤器的功能。
问题是被过滤的数据是RowData
类型的单个对象,用户想知道它是否包含一个包含标题与模式匹配的组件的集合:
class RowData {
let collections: [Collection]
}
class Collection {
let components: [Component]
}
class Component {
let title: String
}
NSPredicate不会让我使用LIKE运算符来获取keypath collections.components.title(因为title,在该上下文中是一个字符串数组),只有CONTAINS,它不能满足我的需要。
有没有办法使用NSPredicate / NSPredicateEditor,或者我必须自己动手?