В качестве примера рассмотрим приложение «Instagram-like».Агрегирование данных базы данных Firebase
В фиде мы получили сообщения с аватаром пользователя и именем вверху, фото или видео ниже и последними комментариями, которым нравится подсчет и время публикации в нижней части.
В принципе, у клиента я жду, чтобы получить от бэкэнда что-то вроде
{ username: "John", avatar:"some_link", photo:"photo_url", likes:"9", time:"182937428", comments:[comments there] }
, но с использованием Firebase, мне нужно хранить данные в более плоском виде. поэтому в данных JSON будут «пользователи», «сообщения» и «комментарии».
Как я могу объединить данные с этих узлов в каком-то одном объекте, который прост в использовании на клиенте?
Или я должен попросить Firebase для сообщений, чем для всех пользователей в нем, и для всех их комментариев, и сделать агрегацию после того, как все три запроса выполнены?
Я до сих пор не получить его. Так что, если я получил «пользователь» с «аватаром», «именем», «возрастом». И я получил «сообщение» с «url», «count» и «userId». Как его собрать? Вручную создайте для каждого для каждой «записи» и добавьте «user.avatar» и «user.name» в свою реализацию на клиенте? А что, если у вас тысячи сообщений? Или я должен дублировать данные от пользователя для публикации? А что, если пользователь меняет имя или аватар ??? – Graykos
извините, я не слежу .. что вы имеете в виду «соберите это вместе» .. – idosh