收藏
回答

小程序云开发数据库要怎么操作数组中的Object增加属性值啊?

云数据库里可以整个members读出来到本地操作,然后操作完再写回去云数据库,

但是实际上,我只需要根据我点击的索引值来增加object的属性值就可以了,点击的索引值index 是变量,本地操作简单

但是数据库操作

.update({

// console.log(this.data.index); // 0

data: {

// 'members[this.data.index]': this.data.absentUser,

// 'members[' + this.data.index ']' : this.data.absentUser,

'members.0.sex': this.data.absentUser,

}

})

'members.0.sex' : this.data.absentUser, 是可以

但是不是我指哪打哪啊......

: 的左边应该怎么写啊......这数组的_.push又不能用在object上

回答关注问题邀请回答
收藏

2 个回答

  • 老张
    老张
    2021-08-14

    let cursor = 'members.'+index+'.sex'

    update({

    data:{

    [cursor]:'value'

    }

    })

    或者直接['members.'+index+'.sex']


    2021-08-14
    有用 1
    回复 3
    • 摄影杨志辉
      摄影杨志辉
      2021-08-14
      果然是老手
      2021-08-14
      回复
    • 摄影杨志辉
      摄影杨志辉
      2021-08-14
      然后,我发现,要改sex为xinbie就不行了
      2021-08-14
      1
      回复
    • 老张
      老张
      2021-08-15回复摄影杨志辉
      建议永远不要用rename,同时保留原字段和新字段,多个字段而已。数据库版本兼容的原则。
      2021-08-15
      1
      回复
  • Mr.Zhao
    Mr.Zhao
    2021-08-14
    跟云开发没关系,js动态键了解一下
    
    2021-08-14
    有用 1
    回复 6
    • 摄影杨志辉
      摄影杨志辉
      2021-08-14
      谢谢您,得努力学习一下。
      2021-08-14
      回复
    • 摄影杨志辉
      摄影杨志辉
      2021-08-14
      然后,我发现,要改sex为xinbie就不行了,这是考虑到安全问题吗?


      Command.rename(value: string): Command

      支持端:小程序 2.8.3, 云函数 1.2.1, Web

      更新操作符,字段重命名。如果需要对嵌套深层的字段做重命名,需要用点路径表示法。



      不能对嵌套在数组里的对象的字段进行重命名。
      2021-08-14
      回复
    • Mr.Zhao
      Mr.Zhao
      2021-08-14回复摄影杨志辉
      行就行,不行就不行,怎么新手都爱扯一下什么安全并发这些没用的,还不如多学点基础知识
      2021-08-14
      回复
    • 摄影杨志辉
      摄影杨志辉
      2021-08-14回复Mr.Zhao
      这就有点难了,我是新手,但是知识,真不知道什么是基础,需要用到这个,不会,也不能说明这是基础知识吧.....真正想问的是怎么解决问题。天下有句话叫不懂就问....我是想问大神,不行那要怎么解决?还是解决不了?还是只能手动控制台一个个删除或者修改?谢谢大神!
      2021-08-14
      回复
    • Mr.Zhao
      Mr.Zhao
      2021-08-15回复摄影杨志辉
      安全问题 并发问题这不是新手该操心的,我还碰到过新手还操心云开发用的是不是固态硬盘,都不知道咋想的


      解决办法,查出来,再覆盖吧
      2021-08-15
      回复
    查看更多(1)
登录 后发表内容