如何检查用户名是否已存在于 firebase 实时数据库中
How to check if username already exists in firebase Realtime Database
我正在尝试检查是否已经存在具有相同用户名的用户,这里是示例
这是我的代码,
DatabaseReference reference = FirebaseDatabase.getInstance().getReference("Users");
Query checkUser = reference.orderByChild("userName").equalTo(userEnteredUserName);
但没有 uid 它工作完美,但是每当有 uid 无法检查用户名时,有没有办法检查用户名
查询期望 userName
成为用户名节点中的直接字段,并且由于每个人的 userId 都不相同,因此您无法指定嵌套路径。如果您删除用户名节点并重组数据库,如下所示,相同的查询应该可以完美运行:
Users
| // remove [username] node from here
|-userId // userId from Firebase Auth
|
|-userName
|-otherFields
如果你想保留现有的结构,那么你可以只检查是否存在具有给定用户名的节点:
DatabaseReference reference = FirebaseDatabase.getInstance().getReference("Users").child("userName");
我正在尝试检查是否已经存在具有相同用户名的用户,这里是示例
这是我的代码,
DatabaseReference reference = FirebaseDatabase.getInstance().getReference("Users");
Query checkUser = reference.orderByChild("userName").equalTo(userEnteredUserName);
但没有 uid 它工作完美,但是每当有 uid 无法检查用户名时,有没有办法检查用户名
查询期望 userName
成为用户名节点中的直接字段,并且由于每个人的 userId 都不相同,因此您无法指定嵌套路径。如果您删除用户名节点并重组数据库,如下所示,相同的查询应该可以完美运行:
Users
| // remove [username] node from here
|-userId // userId from Firebase Auth
|
|-userName
|-otherFields
如果你想保留现有的结构,那么你可以只检查是否存在具有给定用户名的节点:
DatabaseReference reference = FirebaseDatabase.getInstance().getReference("Users").child("userName");