В вопросе нет кода, и я не знаю платформу, поэтому позвольте мне ответить на этот вопрос на высоком уровне.
Предположим, у нас есть коллекция users
:
users
uid_0
name: Larry
friends:
uid_1: true
uid_2: true
events_where_friends_are_going:
event_0:
uid_1: true
uid_2: true
uid_1
name: Moe
friends:
uid_2: true
events_where_friends_are_going:
event_0:
uid_2: true
uid_2
name: Curly
и скажем, у нас есть серия событий, хранящихся в коллекции:
events
event_0
name: "some event"
signups:
uid_1: true
uid_2: true //Curly signed up
Процесс состоит в том, что когда пользователь подписывается на событие, например event_0
, они добавляются в эту коллекцию событий и затем запросите коллекцию users
для всех других пользователей, с которыми они дружат, с помощью вложенной коллекции friends
. Затем они добавляют себя в events_where_friends_are_going, создавая событие, если оно не существует, или, если оно существует, добавляют себя в список.
В приведенной выше структуре, если Curly подписан на event_0, как показано в коллекция регистраций, запрос показывает, что они дружат с uid_0 и uid_1. Затем они добавляются в коллекцию uid_0 и uid_1 events_where_friends_are_going.