问题
有如下云数据库,有一个“test”集合,其中有一条_id为"case1"的记录,我们想要得到这条记录的相关数据。
db.collection('test').doc('case1').get().then(res=>{
console.log("ans:", res)
this.setData({
ans: res.data.ans
})
})
但是,却出现以下错误:
Error: document.get:fail document.get:fail cannot find document with _id XXX, please make sure that the document exists and you have the corresponding access permission.
编译器提示我们读取文档失败。get找不到id为case1的文档,请确认该文档存在并且您有相应的访问权限。
解决方法
1、我们要打开这个集合的“数据权限”,可以看到——对于集合中的每条数据记录:仅创建者可读写。(如下图所示)
2、选择“自定义安全规则”,会弹出窗口。(如下图所示)
3、将"read"和"write"的值都改为true,确定修改。
{
"read": true,
"write": true
}
4、再重新编译,便可得到得到这条记录的相关数据。