首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Flutter社交媒体app中为所有用户验证唯一用户名?

如何在Flutter社交媒体app中为所有用户验证唯一用户名?
EN

Stack Overflow用户
提问于 2021-03-08 11:37:49
回答 2查看 192关注 0票数 0

我正在创建一个Memer社交媒体应用程序。所以在这里一切都准备好了,但我在为所有用户提供唯一的显示名称时感到困惑。用户名由用户提供。但是如何验证它是否真的存在呢?所有数据都存储在firebase云firestore中。有人能帮我吗?用户名的存储方式如下: collection "users“-> document "userId”->field " Username“

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-08 13:00:50

为此,我创建了一个名为username的新集合。在创建帐户之前,我调用此函数来检查可用性:

代码语言:javascript
复制
checkUsernameIsUnique(String username)async
  {
    QuerySnapshot querySnapshot;
    setState(() {
      loading=true;
    });
    querySnapshot=await FirebaseFirestore.instance.collection('username').where("username",isEqualTo: username).getDocuments();
    print(querySnapshot.documents.isNotEmpty);
    return querySnapshot.documents.isEmpty;
  }

checkUsernameIsUnique('username to be checked').then((val){
if(val)
{
   //create the user and store the username in username collection also
   FirebaseFirestore.instance.collection('username').document(widget.username).setData({
        "username":widget.username,
      });
}
else 
//username is taken
});
票数 1
EN

Stack Overflow用户

发布于 2021-03-08 12:57:22

你可以创建cloud function,它将获得用户名,并返回bool,无论它是否唯一。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66524004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档