Firebase从已删除的数据中删除孤立数据

时间:2018-09-05 22:02:25

标签: javascript firebase firebase-realtime-database

假设我有两个这样的数据:

帖子


"posts": {
    "postid_xx1": {
        "title": "Lorem ipsum"
    },
    "postid_xx2": {
        "title": "Amet laboris"
    },
    "postid_xx3": {
        "title": "Sit quis incididunt"
    }
}

用户


"users": {
    "userid_xx1": {
        "name": "John Doe",
        "posts": {
            "postid_xx1": true,
            "postid_xx3": true
        }
    },
    "userid_xx1": {
        "name": "Jane Doe,
        "posts": {
            "postid_xx2": true
        }
    }
}

当我从postid_xx1中删除users时如何从posts中删除r = range(1,6) for counter1 in r: for counter2 in range(len(r)-counter1): print (".", end=" ") print (counter1, end=" ") for counter3 in range (counter1 - 1): print (".", end=" ") print ("") ?。

1 个答案:

答案 0 :(得分:0)

Firebase实时数据库没有自动数据删除功能。您必须编写代码才能自己执行此操作。由于数据库是“ NoSQL”,因此它不管理您放入数据库中的数据的关系。您必须自己管理这些关系。

您可以通过两次调用remove()(see the docs)在客户端上编写它:

firebase.database().ref(`posts/postid_xx1`).remove();
firebase.database().ref(`users/userid_xx1/posts/postid_xx1`).remove();

或者您可以使用Cloud Functions编写触发器,当从users删除节点时,该触发器将自动搜索并删除posts下的匹配节点。