NodeJS 如何将数据从Firebase Realtime数据库中的一个节点复制到另一个节点?

14ifxucb  于 2023-02-18  发布在  Node.js
关注(0)|答案(1)|浏览(114)

我有一个日常应用程序的实时数据库,它有一个通用节点和一个编辑节点,在通用节点中,每个工作日都列出了,其中列出了该特定一天的所有目标。
一般功能是,假设今天是星期二,2022年10月11日我希望将general〉Tuesday节点中的数据复制到Edited〉11102022。如果11102022节点不存在,则创建该节点,然后复制数据。
我目前只在客户端做这个,这意味着客户端需要对数据库有写访问权限,而在最终产品中,我不想包括。
在阅读了一些关于云功能的文档后,我目前正在考虑云功能。但我对此几乎一无所知,文档和其他视频也没有演示我的解决方案,他们只谈论如何查看传入的数据和其他事情。
有没有任何容易遵循的指南或哪些文档我应该阅读找到解决方案?任何帮助这将是一个很大的帮助。
客户端复制我正在跟踪Moving or copying data from one node to another in firebase database中@Alex Mamo的答案
This is my Database snapshot

hc8w905p

hc8w905p1#

抱歉迟到了,我不太确定官方代码,但我这样做:

FirebaseDatabase db = FirebaseDatabase.getInstance();
    DatabaseReference ref= db.getRefernce();

    ref.child("tempuser").child(userID).addListenerForSingleValueEvent(new ValueEventListener() {
                    @Override
                    public void onDataChange(@NonNull DataSnapshot snapshot) {
                        if(snapshot.exists()) {
                            reference.child("user").child(userID).setValue(snapshot.getValue());
                        }
                    }

                    @Override
                    public void onCancelled(@NonNull DatabaseError error) {

                    }
                });

在这里,我将“用户ID”数据下的一个“临时用户”单用户节点移动到与单用户节点具有相同“用户ID”的永久“用户”节点。
希望有帮助。

相关问题