Я использую RealmDB в проекте, над которым работаю. Я пытаюсь получить зарегистрированного пользователя в AppDelegate.swift из БД с помощью следующего запроса.
let result = self.realm.objects(AuthModel.self).filter("isLoggedIn == true").first
Я знаю, что этот пользователь существует, потому что я открыл файл области и увидел поле
Однако, когда я делаю этот вызов области, я получаю следующий ответ
[0] AuthModel {
...
userID = (null);
isLoggedIn = 0;
}
)
Кажется, он возвращает значение по умолчанию, в котором идентификатор пользователя равен нулю, а вошедший в систему - ложь (или 0). Почему это могло происходить? Есть ли какие-то настройки, которые мне нужно сделать, чтобы вызвать этот метод?
Я использовал оператор печати в коде
Непосредственно в собственности authModel.isLoggedIn или просто как print(authModel)?
Код был напечатан (результат)
Значит, если вы попробуете print(result.isLoggedIn), это все равно будет false?
Ага, это еще fasle





Как вы получили ответ? Из отладчика или в коде распечатали? Я бы не стал полагаться на отладчик, поскольку объекты Realm загружаются лениво, поэтому они получают значения в момент обращения к ним.