使用云函数查询没有数据,但云端测试查询有数据,是什么情况?
发布于 7 年前 作者 wei87 12808 次浏览 来自 官方Issues
// 云函数入口文件
const cloud = require('wx-server-sdk')
 
cloud.init()
const db = cloud.database()
 
// 云函数入口函数
exports.main = async (event, context) => {
  return db.collection('BillDetails').where({
    userId: event.objThisId,
    dealYear:event.objDealYear,
    dealMonth:event.objDealMonth
  }).get()
}

如上云函数语句,小程序查询时,结果为空。

var that = this;
    wx.cloud.callFunction({
      name: 'getBill',
      data: {
        objThisId: that.data.thisId,
        objDealYear: that.data.selYear,
        objDealMonth: that.data.showMonth,
      },
      complete: function (res) {
        console.log(that.data.thisId)
        console.log(that.data.selYear)
        console.log(that.data.showMonth)
          var objNub = res.result.data.length
          //获取数据量
          if (objNub > 0) {
 
            console.log("................")
            console.log(res.result.data[1])
            console.log(res.result.data.length)
          }
          //查询错误
          else if (objNub < 0) {
            console.log('查询结果:' + objNub)
            console.log('系统错误!')
          }
          //查询
          else{
            console.log('查询结果:' + objNub)
          }
      }
    })

日志显示:

{"data":[],"errMsg":"collection.get:ok"}


已确认,输入的条件能查询到三条数据!

并且,数据库集合权限设置为:“所有用户可读,仅创建者可读写”!

并且,查询的是创建者自己的数据!

3 回复

数据库查看权限

检查一下数据格式,比如1不能是’1’

小程序端查询的话只能查询当前用户添加的数据,其它方式导入或者其它用户添加的数据在小程序无法查询。

回到顶部