gpt4 book ai didi

javascript - Firestore 子集合删除文档中最旧的内容

转载 作者:行者123 更新时间:2023-11-28 03:27:35 24 4
gpt4 key购买 nike

我一直在努力弄清楚如何从子集合中删除文档,只保留最新的 5 个文档。

我首先尝试获取子集合中的文档列表,按'updated' 日期时间戳排序。然而,这返回 null

let updates = await firestore
.collection('spots')
.doc(spot.id)
.collection('spotupdates')
.orderBy('updated','desc');

然后我尝试从列表中删除最旧的,以确保只剩下 5 个

var cntr = 0;
while(updates.docs.length > 5){
await firestore
.collection('spots')
.doc(spot.id)
.collection('spotupdates')
.doc(updates[cntr].id)
.delete();
cntr++;
}
cntr = null;

请帮忙 - 真的很困难

最佳答案

根据 Firebase 文档从数据库中删除数据:

To delete an entire collection or subcollection in Cloud Firestore, retrieve all the documents within the collection or subcollection and delete them. If you have larger collections, you may want to delete the documents in smaller batches to avoid out-of-memory errors. Repeat the process until you've deleted the entire collection or subcollection.

您可能会在this link中找到一个简化的代码片段来删除集合和子集合。

此外,您还可以在 this link 中找到有关在 Firestore 中删除字段、文档和集合的更多信息和详细示例

请告诉我这是否有帮助。

关于javascript - Firestore 子集合删除文档中最旧的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58492538/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com