Я создаю приложение для чата, поэтому у меня есть чаты и пользователи. В каждом чате есть подколлекция под названием Список пользователей, в основном это список пользователей, которые находятся в этом чате.
I need to show to users only their chatrooms (chats they're participating). For now I made another subcollection in every user document. This collection contains Chatroom documents.
введите описание изображения здесь
И это нормально работает. Но я думаю, что это можно решить без использования дополнительных подколлекций чатов в пользовательских документах. Может быть, по запросу. Итак, мне нужен такой запрос:
Query chatrooms = FirebaseFirestore.getInstance()
.collection("Chatrooms")
.document() //Here's the problem, I need to query through every document, not just through specific one
.collection("User List")
.whereEqualTo("user_id", userId);
Это как-нибудь сделать?
И еще вопрос, эффективно ли это или, может быть, мне стоит остановиться на моем предыдущем решении?