领域查询和过滤器

时间:2016-09-02 08:16:54

标签: swift realm

为了便于说明,我假设我有这样的课程。

Class Person {
     dynamic var id = 0
     dynamic var name = ""
     let dogList = List<Dog>()
}

Class Dog {
    dynamic var id = 0
    dynamic var name = ""
}

如果在Realm数据库中我有1个人名约翰和10只狗。然而,我只想找回约翰的信息和他的一只叫做“绒毛”的狗,用于json序列化。所以它会像:

{
    "PersonList" : [{
        "id" : 1
        "name" : "John"
        "DogList" : [{
            "id" = 0
            "name" = "Fluff"
        }]
    }]
}

如果仅限于狗对象,我将能够做到这样的事情。

let dogsList = realm.objects(Dog).filter({ $0.name == "Fluff" })

但我也需要Person对象的信息。

1 个答案:

答案 0 :(得分:0)

我认为您正在寻找inverse relationship

class Dog: Object {
    dynamic var name = ""
    dynamic var age = 0
    let owners = LinkingObjects(fromType: Person.self, property: "dogList")
}