jpl*_*s93 2 firebase google-cloud-firestore
例如,我可以从集合 x 中删除文档 x,然后从集合 y 中删除文档 y,但是如果出现问题,则回滚所有内容。根据文档, DocumentationReference.delete() 基本上是删除文档的唯一方法。
有一种Transaction.delete(DocumentReference)方法可以删除事务中的文档。
因此,要事务性地删除人口 < 100K 的所有城市(从文档中的示例修改):
var citiesRef = db.collection("cities");
db.runTransaction(function(transaction) {
var count = 0;
return transaction.get(citiesRef).then(function(querySnapshot) {
querySnapshot.forEach(function(doc) {
if (doc.data().population <= 1000000) {
transaction.delete(doc.ref);
count = count + 1;
}
});
});
}).then(function(count) {
console.log("Deleted cities ", count);
}).catch(function(err) {
console.error(err);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1762 次 |
| 最近记录: |