uni-app 微信小程序前端,unicloud云数据库查询bug
uni-app 微信小程序前端,unicloud云数据库查询bug
示例代码:
onShow() {
db.collection('hot_questions').where(
`subject_id == 1`)
.get()
.then((hotRes) => {
console.log(hotRes);
})
}
操作步骤:
onShow() {
db.collection('hot_questions').where(
`subject_id == 1`)
.get()
.then((hotRes) => {
console.log(hotRes);
})
}
预期结果:
data:[]
实际结果:
Error: 未找到集合[hot_questions]对应的schema
bug描述:
该问题自上周五出现,在数据库中没有敏感字段的情况下(如密码password),请求查询数据库一直显示“权限校验未通过”,数据库表的读写read均已为true。
该数据表名为“hot_questions”。
现在新建表请求则会报错“找不到对应表的schema”。
其他旧表请求无问题。
9 回复
连的是本地云空间还是线上云空间?本地和线上都有scheme吗?
线上云空间,都有scheme,实际上上传和下载scheme的操作已经试过很多次了,依然没用
现在的问题是,上周新建的表请求报错“权限校验未通过”,这周新建的表请求报错“未找到对应集合的scheme”,其他旧表都没问题
你好,还在吗?这个bug能帮忙解决一下吗?
回复 TTMY: 您的两个问题,请都再仔细检查一下当前运行的是本地云空间还是线上云空间。
回复 BoredApe:连接本地云函数可以正常使用,但是连接线上云函数依然会报错
回复 BoredApe: 可以帮我在后台看一下是什么问题吗?这个bug真的很严重,我现在所有的新表都用不了了
将"delete": false,试一下。
在使用 uni-app 开发微信小程序时,如果遇到 Unicloud 云数据库查询的 bug,可以按照以下步骤进行排查和解决:
1. 检查云函数代码
- 确保云函数中的查询逻辑正确,包括集合名称、查询条件、字段筛选等。
- 检查云函数是否正常部署,可以通过云函数控制台查看日志,确认是否有错误信息。
// 示例云函数代码
const db = uniCloud.database();
exports.main = async (event, context) => {
const res = await db.collection('your_collection').where({
field: event.fieldValue
}).get();
return res;
};
2. 检查前端调用代码
- 确保前端调用云函数时传递的参数正确,且与云函数期望的参数一致。
- 检查网络请求是否成功,可以通过
uni.request
或uniCloud.callFunction
的回调函数查看返回结果。
// 示例前端调用代码
uniCloud.callFunction({
name: 'your_cloud_function',
data: {
fieldValue: 'someValue'
},
success: (res) => {
console.log('查询结果:', res.result);
},
fail: (err) => {
console.error('调用失败:', err);
}
});