繁体   English   中英

如何删除firestore集合数据库中的所有文档

[英]How to delete all the documents in a firestore collection database

我使用 Firestore 数据库来存储和检索数据。 每天晚上,Firestore 集合中都需要有可用的新数据集(文档)。 那么有什么方法可以一次完全删除集合中的所有现有文档。

我试过那里的文档,它说我们需要一个一个地删除,这是不可能的。 因为文档 ID 是自动生成的。

以下是来自documantaion的代码。

var cityRef = db.collection('cities').doc('BJ');

// Remove the 'capital' field from the document
var removeCapital = cityRef.update({
    capital: firebase.firestore.FieldValue.delete()
});

那么有什么方法可以删除给定火力基础集合中的整个文档?

我尝试使用上面的代码,但出现以下错误。

(index):63 Uncaught ReferenceError: Firestore is not defined
    at myFunction ((index):63)
    at HTMLParagraphElement.onclick ((index):57)

下面是我的代码:

<p id="demo" onclick="myFunction()">Click me.</p>

<script>


function myFunction() {

describe("firestore", () => {
    var db;
    before(() => {
        var config = {
            apiKey: "xxxx",
            aauthDomain: "xxxxfirebaseapp.com",
            projectId: "xxx",
        };
        var app = firebase.initializeApp(config);
        db = firebase.firestore(app);
        //firebase.firestore.setLogLevel("debug");
    });


db.collection('Headings').get().then(querySnapshot => {
    querySnapshot.docs.forEach(snapshot => {
        snapshot.ref.delete();
    })
})
}
</script>

文档是正确的:您必须单独删除文档。 这并非不可能——您只需先查询所有文档,然后删除每个文档。 例如:

db.collection('cities').get().then(querySnapshot => {
    querySnapshot.docs.forEach(snapshot => {
        snapshot.ref.delete();
    })
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM