如何在Firebase中添加新项目

时间:2017-12-19 18:05:25

标签: ios swift database firebase firebase-realtime-database

我想在我的列表中添加一个新项目,我使用firebase而不使用用户(电子邮件,密码)

我想添加这样的新项目: -

开始于:

-vdjs43ndjufd87
     "name" : Jak
     "university" : Harvard

结束于:

-vdjs43ndjufd87
      "name" : Jak
      "university" : Harvard
      "age" : 23

此代码与我无关: -

let key = ref.child("posts").childByAutoId().key


let post = ["uid": userID,
        "author": username,
        "title": title,
        "body": body]

let childUpdates = ["/posts/\(key)": post,
                "/user-posts/\(userID)/\(key)/": post]

ref.updateChildValues(childUpdates)

1 个答案:

答案 0 :(得分:1)

应使用ChildByAutoId()为 new 节点创建密钥。您已经知道要添加数据的节点。

此外,应使用更新来更改现有节点的值。您添加的数据尚不存在。 (更新也可以添加数据,但这是另一个用例)

直接写数据。

let ageRef = ref.child("posts").child("-vdjs43ndjufd87").child("age")
ageRef.setValue(23)

如果要创建新节点,请使用childByAutoId

let postRef = ref.child("posts").childByAutoId()
postRef.child("name").setValue("some name")
postRef.child("age").setValue(44)

结果

-Yie5jas8dj8asdjs
   name: "some name"
   age: 44