#android #realm #kotlin
#Android #realm #kotlin
Вопрос:
У меня есть json:
{
"title": "Title 2",
"body": "Body 2",
"status_info": {
"is_favorite": false,
"is_like": false,
"like_count": 0
},
"id": "47e7704e-89f1-4d0d-8da1-52a080d56f46"
}
И два объекта Realm:
open class Actuality : RealmObject() {
@PrimaryKey lateinit var id: String
@SerializedName("status_info")
lateinit var statusInfo: StatusInfo
...
}
open class StatusInfo : RealmObject() {
@SerializedName("is_like")
var isLiked: Boolean = false
@SerializedName("is_favorite")
var isFavorite: Boolean = false
@SerializedName("like_count")
var likeCount: Int = -1
}
И я использую RealmAdapter RealmResults для обновлений в реальном времени,
но у меня возникла проблема при попытке отсортировать фактические данные по количеству лайков.
Я пытался
data?.sort("likeCount", Sort.DESCENDING)
data?.sort("statusInfo.likeCount", Sort.DESCENDING)
Но realm выдает мне исключение, что «Имя поля ‘likeCount’ не существует».
Как я могу обрабатывать вложенный объект realm в RealmResults?
Комментарии:
1. Сортировка ссылок пока не поддерживается, она имеет обратную связь с родительской и запрашивает класс, по которому вы хотите выполнить сортировку
2. @EpicPandaForce добавьте это в качестве ответа 😉
3. @piotrek1543 только сегодня он перешел в режим «выполняется», поэтому я жду возможности сказать, что это работает с любой версии: p
4. @EpicPandaForce как вы соотносите дочерние объекты с родительскими? Можете ли вы привести пример 🙂 Спасибо
5. @berkayk Подробнее об обратных ссылках вручную читайте здесь medium.com/@Zhuinden /…