收藏
回答

用云函数添加记录没成功

使用云函数,想在查询到没有保存过的用户的动作后插入记录,但是怎么也添加不上。


return db.collection('user').where({
   openid: wxContext.OPENID
 }).get({
   success(res) {
     console.log(res)
     if (res.data.length === 0) {
       db.collection('user').add({
         data: {
           openid: wxContext.OPENID,
           appid: wxContext.APPID,
           unionid: wxContext.UNIONID,
         },
         success(res) {
           console.log(res)
         }
       })
     }
   }
 })

是哪里错了? 求指导!

最后一次编辑于  2018-12-24  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

2 个回答

  • 「©」
    「©」
    2018-12-24

    这样解决了,


    const res = await db.collection('user').where({
          openid: wxContext.OPENID
        }).get();
     
        const arr = res.data;
        if (arr.length === 0) {
          return db.collection('user').add({
            data: {
              openid: wxContext.OPENID,
              appid: wxContext.APPID,
              unionid: wxContext.UNIONID,
            },
            success(res) {
              console.log(res)
            }
          })
        }


    2018-12-24
    赞同
    回复
  • 半寸灰
    半寸灰
    2018-12-24

    async   await的方式



    exports.main = async (event, context) =>


    await db.collection('user')

     .where({    openid:  wxContext.OPENID, // 填入当前用户 openid  }).get()


    2018-12-24
    赞同
    回复 1
    • 「©」
      「©」
      2018-12-24

      get() 的操作后想继续操作数据库,但是没有添加上数据。

      2018-12-24
      回复