Я разрабатываю веб-приложение, которое использует аутентификацию Firebase и базу данных в реальном времени. Метод входа - через Google, а затем, если пользователь новый, его спросят, является ли он учителем или учеником.
Учитель: может создавать классы и добавлять студентов, используя их user.uid. У каждой классной комнаты есть уникальный идентификатор. Могут просматривать список своих учеников.
Ученик: может просматривать свой класс и одноклассников.
Итак, Как мне закодировать два разных типа пользователей в Firebase для моего веб-приложения? Какие правила будут использоваться в базе данных?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


[ОБНОВЛЕНО]
Вы можете попробовать это простым способом:
Создайте Объект JSON для хранения информации о пользователях в поле в зависимости от использования:
isTeacher типа логический (предположим, что вы не добавите другой тип пользователя) илиuserType объекта содержит все типы функций (isTeacher: логический, isStudent: логический, isHeadmaster: логическое и т. д.) илиuserType типа нитьСоздайте метод или условие для проверки поля документа пользователя, является ли true для определенного типа пользователя / compare string (зависит от того, какой из них вы используете), используя корпус if или switch.
В каждом случае / условии показывайте элементы сети в соответствии с их привилегиями.
После входа в систему перед загрузкой страницы выполните проверку с помощью созданной функции
Концептуально это хороший ответ. Однако OP спрашивает о Firebase База данных, а не о Firestore. В базе данных нет коллекций или документов. Также 1) на месте, но функция в 2) не нужна, так как при аутентификации пользователя определите тип пользователя, прочитав этот узел пользователей через их пользовательский uid (например, / your_firebase / users / uid / user_type).