2017-02-23 38 views
0

У меня возникла проблема с получением данных из базы данных Realm, которую я создал. Я создал объект под названием ProgramAnswerRealm, как показано ниже:Быстрое получение данных в реальном времени

import Foundation 
import RealmSwift 

public class ProgramAnswerRealm: Object { 
    var answerChosen: String = "" 
    var imagePath: String = "" 
    dynamic var category: Category! 


} 

Я пишу это, и когда я объявляю результаты в переменную можно увидеть значение в ближайшем окне.

po dataSource.last 
▿ Optional<ProgramAnswerRealm> 
    ▿ some : ProgramAnswerRealm { 
    answerChosen = bird; 
    imagePath = ; 
    category = (null); 
} 

Проблема заключается в том, когда я пытаюсь присвоить переменный мое значение answerChosen, используя следующий код:

dataSource.last!.answerChosen 

Я не в состоянии получить возвращаемое значение. Есть ли что-то, что я делаю неправильно?

ответ

0

Я понял ответ.

Оказывается, мне нужно объявить переменные динамическими для объекта.

1

Вы просто должны поставить динамический, когда вы объявляете своих членов.

Когда вы отмечаете заявление члена с динамического модификатора, доступ к этому члену всегда динамически отправляется с помощью Objective-C среды выполнения. Доступ к этому члену - - никогда не встраивается или девиртуализируется компилятором.

public class ProgramAnswerRealm: Object { 
    dynamic var answerChosen: String = "" 
    dynamic var imagePath: String = "" 
    dynamic var category: Category! 
} 

Не забывайте, если вы хотите добавить Список в классе не метят декларацию члена с динамическим идентификатором.

https://realm.io/docs/swift/latest/#models

Смежные вопросы