Realm Swift子查询返回具有特定子项的所有父项

时间:2016-10-26 08:45:46

标签: ios swift realm

我有两个RLMObject,我创建了一对多的关系。我想对此运行连接查询,因此它应该返回所有类别,每个类别仅包含付费项目。

class Category: Object {
    dynamic var title = ""
    let items = List<Item>()
}

class Item: Object {
    dynamic var name = ""
    dynamic var cost = 0.0
    dynamic var isPaid = false
    dynamic var category: Category?
}

我使用此代码但它仍会返回所有类别和所有项目,包括非付费项目

let categories = realm.objects(Category.self).filter("ANY items.isPaid = %@", true)

我认为原因是如果某个类别中的一个/多个项目具有isPaid = true,则此类别将添加到结果&lt;&gt;中。我想要达到的目的就像下面的例子中那样

让我们在数据库中说

category[0] has item[0].isPaid = true, item[1].isPaid = false
category[1] has item[0].isPaid = true, item[1].isPaid = true

我想要结果&lt;&gt;应该包含

category[0] has item[0].isPaid = true
category[1] has item[0].isPaid = true, item[1].isPaid = true

0 个答案:

没有答案