Проблема с запросом Realm @count - PullRequest
1 голос
/ 18 января 2020

Я пытался использовать функцию @count для получения данных в соответствии с этим, но он каким-то образом зависал без отчета cra sh.

Вот код

class PSMedia: Object {
    @objc dynamic var id = ""

    @objc dynamic var promotional_status = false

    var promotions = List<String>()
}

А вот этот запрос, вызвавший проблему

realm.objects(PSMedia.self).filter("promotions.@count <= 5")

Что здесь не так? Я следовал за realm swift do c и использовал @count функцию, аналогичную описанной в do 1011 *.

1 Ответ

1 голос
/ 18 января 2020

Я почти уверен, что @count не работает со списками примитивов. Область вообще не поддерживала списки примитивов вообще, теперь она поддерживает, но некоторые функции отсутствуют.

Измените ваши продвижения как список других объектов области

class PromotionClass: Object {
   @objc dynamic var promotion = ""
}

и затем

class PSMedia: Object {
    @objc dynamic var id = ""
    @objc dynamic var promotional_status = false
    let promotions = List<PromotionClass>()
}

тогда это будет работать

realm.objects(PSMedia.self).filter("promotions.@count <= 5")

РЕДАКТИРОВАТЬ

Да, это правильно. Это не поддерживается Вот ссылка на Github для этой проблемы

Документы Swift должны дать понять, что фильтрация по someListOfPrimitives.@count не поддерживается # 6079

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