Результаты Swift Realm в редактируемый объект или массив - PullRequest
0 голосов
/ 06 ноября 2019

Хорошо, я понимаю, что не могу изменить результаты объекта области.

Итак, каков наилучший способ изменить данные.

Сначала я получаю все данные области как результаты<Месяц>

let m = Month.getAllEntriesByDateAsc()

Теперь мне нужно просмотреть все данные, чтобы изменить их. (Это функция для пересчета данных всей таблицы.)

Итак, я хочу пройтись по данным и сделать что-то вроде:

for i in m {

   var d = i

   // perform calculations like
   d.value = 9999 

}

Я хочу сделать все изменения на d.

Это какое-то отображение, которое я могу использовать для создания нового съедобного объекта из данных области?

Ранее я делал что-то вроде этого:

for i in m {

    let d = Month()
    d.value = i.value
    d.status = i.status

}

Нотеперь есть много переменных.

Мне нравится то, что мне нужно, чтобы изменить объект Realm на объект Model?

И что .toArray () не будет работать внутри цикла? Не знаю почему.

Спасибо.

1 Ответ

0 голосов
/ 06 ноября 2019
extension Results {
    func toArray<T>(ofType: T.Type) -> [T] {
        var array = [T]()
        for i in 0 ..< count {
            if let result = self[i] as? T {
                array.append(result)
            }
        }

        return array
    }
}

С здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...