Сравнение результатов области и поиск объекта в списке - PullRequest
0 голосов
/ 23 октября 2019

Мне нужно перебрать объекты в файле Realm и посмотреть, есть ли он также в списке.

Когда я смотрю на файл с помощью браузера Realm, он есть, но следующий кодвсегда выдает ложь.

Кто-нибудь может разобрать, что происходит? (Я начинаю Try! Realm ранее в коде, он есть, это просто раздел, который покачивает мой Брайан. Он работает нормально, кстати.

Спасибо, благословения, - Марк

    let totalReg = realm.objects(Registry.self)
    let totalList = realm.objects(AllServices.self)

    if totalReg.count != 0 && totalList.count != 0 { // when the update releases, I will change totalList == 0

        print(totalReg.count) // = 2 records
        print(totalList.count) // = 1 but when I click and open the list in Realm Browser it shows both records

        let a = AllServices().self

        for reg in totalReg {
            if a.everything.contains(reg) {

                print("Here")
            } else {
                print("not here") //Each loop goes here.
                print(a.everything) //this prints: List<Registry> <0x600001d6e070> ( )
                print (reg) //This correctly prints all the properties of the object.
            }
        }
    }

Этот код по умолчанию всегда равен false, даже если объект реестра находится в списке.

class Registry: Object {
    @objc dynamic var registryId = UUID().uuidString

    @objc dynamic var dateTime:String?
    @objc dynamic var proper:String?
    @objc dynamic var service:String?
    @objc dynamic var place:String?

    @objc dynamic var sunEuchAttendance:Int = 0

    @objc dynamic var otherServiceAttendance:Int = 0
    @objc dynamic var EuchVisitor:Int = 0

    @objc dynamic var numberOfCommunions:Int = 0

    //People serving
    @objc dynamic var presiderOfficiant:String?
    @objc dynamic var preacher:String?
    @objc dynamic var server:String?
    @objc dynamic var memo:String?

    @objc dynamic var weekendEuch:Int = 0
    @objc dynamic var weekdayEuch:Int = 0
    @objc dynamic var privateEuch:Int = 0

    @objc dynamic var weekendOffice:Int = 0
    @objc dynamic var weekdayOffice:Int = 0

    @objc dynamic var burrial:Int = 0
    @objc dynamic var marraige:Int = 0

    @objc dynamic var other:Int = 0

    override static func primaryKey() -> String? {
        return "registryId"
    }

    override static func indexedProperties() -> [String] {
        return ["service"]
    }
}

// Модель списка

class AllServices: Object {
    var everything = List<Registry>()
    var eucharist = List<Registry>()
    var weekdayEucharist = List<Registry>()
    var office = List<Registry>()
    var weekdayOffice = List<Registry>()
    var marriage = List<Registry>()
    var burial = List<Registry>()
    var requiem = List<Registry>()
    var nuptial = List<Registry>()
    var other = List<Registry>()
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...