我目前在 React + Firebase 项目中工作。在 Firestore 中,我需要保存用户的数据,但目前我不知道使用哪种方法。将有两个用户,教师和学生。
第一个选项:设置用户集合,每个文档都有“用户类型”字段,用于定义用户是教师还是学生。我用这种方法看到的问题是,可以说:
- 一位老师输入他的凭据并尝试登录。成功登录后,我的系统将转到firestore并搜索与老师相关的信息。所以基本上 in 将查询“用户”集合以根据电子邮件(电子邮件将是唯一的)和“用户类型”==“老师”来查找数据。在最坏的情况下,用户是一个非常大的集合,然后查询获取教师数据会影响用户体验,因为 firestore 需要读取大量文档。
第二个选项:创建两个集合,一个“教师”集合和一个“学生”集合。然后在我的系统中,我将设置两个登录按钮,而不是单个登录按钮,一个作为教师登录,一个作为学生登录。然后,对于相同的示例:
- 一位老师输入他的凭据并尝试登录。成功登录后,我的系统将转到 firestore 并在“老师”集合中搜索信息,非常快速地检索我需要的数据。这里的问题是我需要构建两个按钮,而且我担心它会使我的 Web 应用程序对用户不太友好或不太直观。
希望我能很好地解释自己,我不是最好的英语作家,谷歌翻译并没有太大帮助。任何帮助将不胜感激。提前致谢。