在 firebase 实时数据库中制作相同的节点
Make identical node in firebase realtime database
假设有两个节点:
用户数据(在“用户数据”中我们有:)
唯一标识
名称:“abc”
纬度:“123”
经度:“456”
用户密钥(在“用户密钥”中我们有:)
唯一标识
g: "awe46q"
升
0:123
1:456
这里我想用相同的唯一 ID 保存“用户数据”和“用户密钥”。但是我不知道怎么做。
I have tried the push() method but it generates different unique ids.
这是预期的行为,因为多次调用 push()
,每次都会生成一个新的随机 ID。
Will I have to use FirebaseAuth to make the unique id similar for "user data" & "user key".
当涉及到用户 ID 时,是的,最合适的解决方案是实施 Firebase Authentication 并使用在此过程中生成的 UID
。最后,您可以在每个需要的参考中简单地使用相同的 UID
,例如:
String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference userDataRef = rootRef.child("userData").child(uid); //One reference
userDataRef.setvalue(yourObject);
DatabaseReference otherUserDataRef = rootRef.child("otherUserData").child(uid); //Second reference
otherUserDataRef.setvalue(otherObject);
假设有两个节点:
用户数据(在“用户数据”中我们有:)
唯一标识 名称:“abc” 纬度:“123” 经度:“456”
用户密钥(在“用户密钥”中我们有:)
唯一标识 g: "awe46q" 升 0:123 1:456
这里我想用相同的唯一 ID 保存“用户数据”和“用户密钥”。但是我不知道怎么做。
I have tried the push() method but it generates different unique ids.
这是预期的行为,因为多次调用 push()
,每次都会生成一个新的随机 ID。
Will I have to use FirebaseAuth to make the unique id similar for "user data" & "user key".
当涉及到用户 ID 时,是的,最合适的解决方案是实施 Firebase Authentication 并使用在此过程中生成的 UID
。最后,您可以在每个需要的参考中简单地使用相同的 UID
,例如:
String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference userDataRef = rootRef.child("userData").child(uid); //One reference
userDataRef.setvalue(yourObject);
DatabaseReference otherUserDataRef = rootRef.child("otherUserData").child(uid); //Second reference
otherUserDataRef.setvalue(otherObject);