Pra*_*nth 8 node.js firebase google-cloud-functions google-cloud-firestore
我想编写一个云函数来侦听是否在following某些文档的子集合中创建了新文档users。然而,先前创建的用户文档可能没有子集合following。
换句话说,我想要一个响应db.collection(\xe2\x80\x9cusers\xe2\x80\x9d).doc(\xe2\x80\x9cdoc_id1\xe2\x80\x9d).collection(\xe2\x80\x9cfollowing\xe2\x80\x9d).doc(\xe2\x80\x9cdoc_id2\xe2\x80\x9d).set(new_document)\n的云,并且我已经将云函数编写为
exports.create_friend_request_onCreate = functions.firestore\n .document("users/{user_id}/{following}/{following_id}")\n .onCreate(f2);\nRun Code Online (Sandbox Code Playgroud)\n\nf2并在其他文件中编写了实现
exports.f2 = async function(snapshot) {\n //some code\n}\nRun Code Online (Sandbox Code Playgroud)\n\n但是,在子集合中创建文档时,出现以下错误
\n\nError: Value for argument "documentPath" is not a valid resource path. Path must be a non-empty string.
有人可以向我解释一下这里出了什么问题吗?
\n小智 12
我遇到了同样的问题,问题的原因是文档路径必须是字符串。
collection("questions").doc(21)是错的。
collection("questions").doc("21")是工作。
-你必须确保变量是字符串。你可以使用"users/{String(user_id)}/{following}/{String(following_id)}"
改变这个:
.document("users/{user_id}/{following}/{following_id}")
Run Code Online (Sandbox Code Playgroud)
进入这个:
.document("users/{user_id}/following/{following_id}")
Run Code Online (Sandbox Code Playgroud)
不collection应该有一个{wildcard}
| 归档时间: |
|
| 查看次数: |
22733 次 |
| 最近记录: |