我有一个看起来像这样的数据库:
我想为数据库中的所有用户在特定时间(例如12 AM)自动将Patient_List
和Current_Token
子级重置为0。
我浏览了Firebase云功能文档以及gitHub上的以下项目: Deleting nodes和Delete unused user accounts using Cron。 以上两个示例均基于特定的UID更新和更改数据,即基于传递的UID仅更新特定的节点。 我想知道是否可以在所有节点中更新上述子元素的值,如果可以,将如何完成?
答案 0 :(得分:1)
不可能有一个单独的update语句影响某个位置下所有数据库节点的子级。您将必须迭代所有节点(通过某种方式查询/读取),然后更新找到的每个节点。这可能是一项昂贵的带宽操作。
答案 1 :(得分:0)
仅使用常规引用,并在引用之前要更新的所有节点,如下所示:
var gralRef = firebase.database().ref();
var obj_update={};
obj_update[`users/${firstuser}/name`]='John';
obj_update[`users/${seconduser}/name`]='Mark';
obj_update[`users/${seconduser}/address`]='New York';
gralRef.update(obj_update);