收藏
回答

请问云数据库如何对指定二维数组对象的属性进行更新?

尝试了点表示法和括号表示法,都不行。想问问大佬怎么解决的?我的记录结构如下,想把指定二维下标的ifCanceled改为true

    db.collection('112233').where({
      _id:docid,
    }).update({
      data:{
        ['pieceList.'+pieceindex.toString()+'.'+equipnum.toString()+'.ifCanceled'] :true
//pieceindex和equipnum分别是二维数组第一和第二个下标
      }
    }).then(res=>{
      console.log('取消之后返回的res',res)
    })
最后一次编辑于  2021-08-22
回答关注问题邀请回答
收藏

1 个回答

  • 老张
    老张
    2021-08-22

    先构建下标,再update。

    //let upd1 = 'pieceList.9.0.field'
    let upd1 = 'pieceList.'+index1+'.'+index2+'.field'
    let update = {[upd1]:true}
    conso.log(update)//这里好调试
    ....update({data:update})
    
    2021-08-22
    有用
    回复 3
    • 中微子走过的光年
      中微子走过的光年
      2021-08-22
      试了,还是不行
      2021-08-22
      回复
    • 老张
      老张
      2021-08-22回复中微子走过的光年
      console呢?如果还不行,那就:1、写死参数;2、改必数据库权限。
      2021-08-22
      回复
    • 中微子走过的光年
      中微子走过的光年
      2021-08-22回复老张
      解决了,不是路径问题是权限问题,我真是个笨比……
      2021-08-22
      回复
登录 后发表内容