如何在Firebase中的当前uid中保存数据 [英] How to save data in current uid in Firebase

查看:43
本文介绍了如何在Firebase中的当前uid中保存数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我无法将新数据(消息")保存到当前用户.

I can't save new data ("messages") to current user.

我用于将用户信息推送到Firebase的代码

my code for push user info to Firebase

var ref: FIRDatabaseReference! = FIRDatabase.database().reference()

self.ref.child("Users").child("UserID").childByAutoId().setValue(["Name": userName, "Email": userEmail])

用于将消息推送到Firebase的代码

code for push messages to Firebase

var messageRef: FIRDatabaseReference = FIRDatabase.database().reference()
let uid = FIRAuth.auth()?.currentUser?.uid
messageRef.child("Users").child("UserID").child(self.uid!).child("Messages").childByAutoId().setValue(["Sender Name": Profile.sharedProfile.Name!,"Date": self.currentDate(),"Time": self.currentTime(), "Text": self.text.text!])

这就是我在Firebase数据库中看到的内容

但是我想要这样的需要保存在当前用户中的消息

推荐答案

您的第一段代码不正确.如果要将 Messages 放在现有的 User 下,则应使用 child(self.uid!)而不是 childByAutoId(),因为第二种方法会在Firebase DB中生成新实例.因此,您的代码应类似于:

Your first block of code is incorrect. If you want to put your Messages under existed User, you should use child(self.uid!) instead of childByAutoId(), because the second method generates new instance in firebase DB. So your code should looks something like:

var ref: FIRDatabaseReference! = FIRDatabase.database().reference()
self.ref.child("Users").child("UserID").child(self.uid!).setValue(["Name": userName, "Email": userEmail])

这篇关于如何在Firebase中的当前uid中保存数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆