Резольвер для вложенного объекта в сторио

Подскажите пожалуйста, как написать решатель для вложенного объекта в сторио. пример

"book": {"id": 1, "title": "The Chronicles of Amber", "author": "Roger Zelazny", "reader": {"id": 1, "name": "Jack"}}

1 ответ

Решение

По сути, у вас есть 2 разных подхода:

  1. Хранить вложенный объект в одной таблице
  2. Хранить вложенный объект в отдельной таблице

Если вы выберете вариант 1, вам просто нужно добавить составной тип, например TweetWithUser/ etc и пишите распознаватели операций, которые будут анализировать разные объекты отдельно и создавать составной тип. Пример здесь.

Если вы выберете вариант 2, то это почти тот же подход, что и получение отдельных объектов из Cursor как 1, но вам нужно будет пройти кастом RawQuery с JOIN чтобы получить оба объекта.

У нас есть пример этого в примере приложения в репозитории, пожалуйста, проверьте это!

Лично мы использовали второй вариант в реальных приложениях со StorIO, работает нормально.


Просто помните, что StorIO - это не ORM, и вы имеете полный контроль над запросами и распознавателями операций, также вы можете передавать конкретный распознаватель операций для каждого запроса.

Другие вопросы по тегам