如何在Firebase和Flutter上对注册用户进行分类

时间:2020-05-16 14:17:45

标签: firebase flutter dart

我正在开发一个应用程序。用户可以在其中找到设计师的地方。我有一个供稿使用的单独页面,所有用户可以在其中交互,而普通用户可以在其中找到设计师资料并雇用他们。设计师和普通用户都可以类似地注册,但是我想将用户个人资料和设计师个人资料分开,并在页面上显示设计师个人资料。有没有办法在firebase上做到这一点。假设我在注册时提供了一个复选框(如果您是设计师,请单击)。我能否将设计器配置文件存储在firebase上的单独文件夹中,并在单独的页面上显示该数据?还是还有其他方法?

1 个答案:

答案 0 :(得分:1)

您可以有2个不同的集合,一个用于设计师,另一个用于普通用户,或者您可以将两个数据都放在一个集合中,并可以使用布尔值来标识它是设计师还是用户个人资料。

这里是一个例子, 如果配置文件是设计者配置文件,则使变量isDesigner保持为true,否则为false。

第一种方法

现在,我们可以按以下方式修改firebase集合参考

Firestore.instance.collection(isDesigner?'designer':'normal_user')

如果其设计者个人资料数据将存储在designer集合中,而如果其常规个人资料数据将存储在normal_user集合中。

第二种方法

如果您不想有2个不同的集合,则可以在数据中添加一个布尔值,以识别其设计者资料还是普通用户资料,并进行类似的查询

获取所有设计者资料。

Firestore.instance.collection('users').where('isDesigner',isEqualTo:true).snapshots()

获取所有普通用户个人资料。

Firestore.instance.collection('users').where('isDesigner',isEqualTo:false).snapshots()

希望这对您有帮助!