Firebase в Android "выбрать из" нескольких коллекций - PullRequest
0 голосов
/ 20 января 2020

Существует "быстрый" или "менее неправильный" способ получения "зависимых" данных из Cloud Firestore?

У меня есть две основные коллекции: "пользователи" и "чемпионат". И коллекция под названием «команда» внутри каждого документа «пользователя».

Каждый чемпионат состоит из команд, и я храню каждую команду в массиве ссылок, например:

"championship": {
    "teams": [
        team_1_ref, team_2_ref, ...
    ]
}

Делая это, я могу получить все команды чемпионата, но я также хочу получить пользователя-владельца команды.

Я знаю, что могу создать новый ссылочный "атрибут" с именем владельца для команда, а затем получить «данные» каждого пользователя, но есть ли другой способ сделать это?

1 Ответ

2 голосов
/ 20 января 2020

Если вы спрашиваете, существует ли способ выполнить запрос типа «соединение», охватывающий данные из нескольких коллекций, это невозможно. Если у вас есть документ с массивом, и вы хотите получить все другие документы, упомянутые в этом массиве, вам придется написать код, чтобы получить каждый из них по отдельности. Это нормально для баз данных без sql типа и не так плохо, как вы думаете, с точки зрения производительности.

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