在Cloud Functions和Firestore中通过查询文档id获取文档



我在firestore云函数中有一个更新文档的触发器,在这个函数中,我想获取包含特定字符串的文档。所以我尝试了这个:

const chat_threads = admin.firestore().collectionGroup('chatThreads').where(admin.firestore.FieldPath.documentId(),'array-contains', reciever_id).get().then(function (querySnapshot) {
querySnapshot.forEach((doc) => {
console.log(doc.id, " => ", doc.data());
});
});

但是我收到这个错误

错误:查询无效。您不能在FieldPath.docultId((.上执行"array-contents"查询

有其他方法可以得到结果吗?或者我可以用什么代替array-contains

我想获取包含特定字符串的文档

Firestore无法找到具有任意子字符串的文档。它可以进行前缀过滤(所以字符串以特定值开头(,但没有其他子字符串匹配。

这之前已经报道过几次了,所以请看一下:

  • Firestore获取包含字符串的文档
  • 选择Firestore中文档字段包含字符串的位置
  • Firestore-如何应用';字符串包含';查询时字段的条件

虽然这些不是特定于文档ID的(根据您的需要(,但这里也适用相同的限制(以及解决方案/解决方案(。

相关内容

  • 没有找到相关文章

最新更新