收藏
回答

db.collection.aggregate无法正常运行 ,报错501000 ?

为什么相同环境相同数据库相同表相同代码内,可以用get查询,不能用aggregate查询?

完整代码如下。报错如图:环境错误。

onLoad: function (options{
    const db = wx.cloud.database()
        db.collection('orders').aggregate()
        .match({price:30})
        .end()
        .then(res => {console.log('collection aggregate   success:',res)})
        .catch(err => {console.log('collection aggregate   error:',err)})

        db.collection('orders').get()
        .then(res => {console.log('collection get   success:',res)})
        .catch(err => {console.log('collection get   error:',err)})

报错信息如下:

Error: errCode: -501000  | errMsg: Environment not found

    at new u (WAService.js:1)

    at Function.success (WAService.js:1)

    at Object.success (WAService.js:1)

    at r (WAService.js:1)

    at WAService.js:1

    at v (WAService.js:1)

    at WAService.js:1

    at VM8 asdebug.js:1

最后一次编辑于  02-07
回答关注问题邀请回答
收藏

2 个回答

  • Lemon
    Lemon
    01-25

    上面报错信息不是告诉你是环境的问题,可能是你环境切换或者环境配置的问题。

    01-25
    有用
    回复 4
    • coweal
      coweal
      01-25
      但是相同环境下(且在同一个代码内),用photos.where().get()查询数据库正常,证明环境正常。所以就很奇怪了。  谢谢回复!
      01-25
      回复
    • Lemon
      Lemon
      01-25回复coweal
      1、查询的代码有没有问题?
      2、清除缓存或者关掉开发工具重新打开;
      3、重新创建一个新项目,在新项目中尝试看看;
      01-25
      回复
    • coweal
      coweal
      02-04回复Lemon
      谢谢
      1、查询代码正常,在云控制台可以查询。
      2、清除缓存和重新打开,均不能解决。
      3、尚未重建项目,但是把aggregate查询代码与普通的get查询放在一起运行,普通的get可以查询,而aggregate查询失败501000环境错误。
      怀疑是不是aggregate还需要一些特殊设置,但是官方没有明确指导?
      02-04
      回复
    • coweal
      coweal
      02-07回复Lemon
      为什么相同环境相同数据库相同表,可以用get查询,不能用aggregate查询? 
      完整代码如下。报错如图:环境错误。 
      onLoad: function (options) { 
          const db = wx.cloud.database() 
              db.collection('orders').aggregate() 
              .match({price:30}) 
              .end() 
              .then(res => {console.log('collection aggregate   success:',res)}) 
              .catch(err => {console.log('collection aggregate   error:',err)}) 
       
              db.collection('orders').get() 
              .then(res => {console.log('collection get   success:',res)}) 
              .catch(err => {console.log('collection get   error:',err)})
      02-07
      回复
  • coweal
    coweal
    01-20

    相同环境下,photos.where().get()运行正常反馈结果。~~~~ 说明云环境没有问题。

    但是相同代码段内 photos.aggregate().end() 报错501000 。~~~~却说云环境有问题,很矛盾了,云环境如上验证是正常的。

    01-20
    有用
    回复 2
    • coweal
      coweal
      02-07
      把 project.config.json中的2.8.1 改为2.20.1 后解决。浪费了一个多月时间,无语
      02-07
      1
      回复
    • 重山
      重山
      2天前回复coweal
      查了半天,看了你的帖子好了,感谢
      2天前
      回复
登录 后发表内容
问题标签