Получить значение свойства из другой таблицы во время миграции области - PullRequest
0 голосов
/ 12 сентября 2018

Есть ли документированный способ или пример запроса или получения значения свойства из другой таблицы?

На данный момент у меня есть:

private func getFullnameFromPerson(_ migration: Migration, _ userId: String) -> String {
    var fullname = ""
    migration.enumerateObjects(ofType: Person.className(), {oldObject, newObject in
        let _userId = newObject?["userId"] as? String
        if _userId == userId {
            let firstname = oldObject?["firstName"] as? String ?? ""
            let lastname = oldObject?["lastName"] as? String ?? ""
            fullname = "\(firstname) \(lastname)"
        }
    })
    return fullname
}

Затем я назвал это в рамках миграции Realmблок:

private func update1to2(_ migration: Migration) {
    migration.enumerateObjects(ofType: Report.className(), {oldObject, newObject in
        let userId = oldObject!["userId"] as! String
        newObject?["fullname"] = getFullnameFromPerson(migration, userId)
    })
}

Это нормально?или должен быть более правильный путь?

...