Многие ко многим используют Firebase
Допустим, у меня есть два вида объектов пользователей и учетных записей. Пользователи могут иметь много учетных записей и делиться ими с другими пользователями. Таким образом, AccountA может быть доступен для User1 и User2. Пока AccountB доступен только для User1. Таким образом, User1 имеет две учетные записи, а User2 имеет одну учетную запись.
Что "firebase» способ структурировать это?
Сначала я думал, что пользователи могут хранить множество учетных записей, к которым они принадлежат.
users: {
1: {
name: 'Ted',
accounts: [1, 2]
}
2: {
name: 'Frank',
accounts: [1]
}
}
accounts: {
1: {
name: "Checking"
},
2: {
name: "Savings"
}
}
Или Учетная запись будет иметь массив пользователей.
users: {
1: {
name: 'Ted'
}
2: {
name: 'Frank'
}
}
accounts: {
1: {
name: "Checking",
users: [1, 2]
},
2: {
name: "Savings"
users: [1]
}
}
Мне интересно, какой способ позволяет мне легко находить учетные записи для пользователя, чтобы при входе в систему Тед мог составлять список учетных записей, к которым он принадлежит, без необходимости опускать всю базу данных. Для безопасности я неВ любом случае, мне не нужны все эти данные на его машине.
Вопрос № 1 Будут ли правила безопасности позаботиться об этом? Под этим я подразумеваюЯ планирую установить мое правило безопасности таким образом, чтобы пользователи могли только те учетные записи, к которым они принадлежат. Я'Я надеюсь, что если я запросить "/ счета "Я"я вернусь только к тем учетным записям, к которым у пользователя есть доступ ... нет?
Вопрос № 2 Есть ли механизм для запроса списка предметов. Подобно "/ счета / [1,2]» чтобы я вернул счета/ Счета / 1" а также "/ Счета / 2" ?
Спасибо за любую информацию, которой вы можете поделиться.