Ссылка на документ Firestore по индексу во флаттере - PullRequest
0 голосов
/ 14 июля 2020

У меня есть коллекция с именем contactData, внутри этой коллекции у меня 100 документов.

В моем приложении flutter я генерирую 4 случайных числа от 0 до 100. После этого я пытаюсь читать из документы моей коллекции по этим указателям. Но кажется, что я могу сослаться только на имя документа.

Есть ли способ получить документы по его индексу в коллекции, не указывая индекс внутри каждого документа?

Если этот вопрос не отвечает ' не согласен с условиями использования этого веб-сайта, пожалуйста, удалите его.

1 Ответ

0 голосов
/ 14 июля 2020

Запросы Firestore не основаны на индексах, так как это просто не соответствует природе базы данных в реальном времени. Чтобы прочитать документ N + 1, вам также необходимо прочитать все N документов перед ним.

Серверные SDK для Firestore do имеют необходимый API смещения, но это внутренне именно то, что я уже описал: он читает все N + 1 документов и возвращает только последний из этой последовательности.

Если вам нужна система ранжирования, вы действительно захотите сохранить ранжирование внутри каждого документа. Взгляните на это объяснение Дэна о том, как построить такую ​​систему в Firestore: Рейтинг в таблице лидеров с помощью Firebase

Если вы хотите вернуть случайный документ и использовать свои случайные числа в качестве основы для этого, то будет . Взгляните (еще раз) на объяснение Дэна о том, как это сделать здесь: Firestore: как получить случайные документы в коллекции

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