#android #firebase #flutter #dart #google-cloud-firestore
#Android #firebase #флаттер #dart #google-облако-firestore
Вопрос:
Я пытаюсь запросить свою коллекцию Firebase, используя значение внутри массива. Я использую arrayContains, а затем передаю значение, как показано в коде, но после запроса оно возвращает длину 0.
FirebaseFirestore.instance
.collection('chatrooms')
.where('users.0', arrayContains: {'studentid':'1WINXTQdshhn4jLfhMWWaZNNdL32'})
.get();
Вот изображение моей базы данных.
Ответ №1:
Это невозможно сделать с помощью array-contains
. Для запроса необходимо использовать весь объект student array-containing
. Этот запрос пытается найти {'studentid':'1WINXTQdshhn4jLfhMWWaZNNdL32'}
объект внутри массива users.0
поля. Подробнее об этом читайте здесь https://firebase.google.com/docs/firestore/query-data/queries#array_membership .