Firebase更改现有记录的位置/目录

时间:2018-03-13 15:53:30

标签: javascript firebase firebase-realtime-database

我正在尝试操作firebase中的数据,并遇到了以下问题:

如果我在子目录(A)中有2条记录,并想将它们移动到子目录(B),我该如何在javascript中执行此操作?

MainContainer
   - A
      - KEY 1 data
      - KEY 2 data
   - B

我在考虑将内容复制到保存到目录B的新记录并删除目录A记录,但firebase是否提供了一种更简单的方法来移动记录?

3 个答案:

答案 0 :(得分:0)

Firebase实时数据库不提供移动操作。您必须读取现有数据,将其写入新位置,然后删除原始位置的数据。

答案 1 :(得分:0)

参考https://firebase.google.com/docs/database/web/read-and-write#update_specific_fields

您可以在一次操作中更新多个节点。因此,在阅读了您想要管理的初始数据后,您可以将其字段设置为null以删除它们并将新字段设置为目标值

答案 2 :(得分:0)

So I came across this solution it will copy the code in your old directory and recreate it to the new directory..

moveFbRecord: function(oldRef, newRef){    
         oldRef.once('value', function(snap)  {
            newRef.set( snap.val(), function(error) {
                   if( !error ) {   }
                   else if( typeof(console) !== 'undefined' && console.error ) {  console.error(error); }
              });
         });