收藏
回答

云开发数据库服务端api不支持update嵌套对象

框架类型 问题类型 终端类型 AppID 基础库版本
小程序 Bug 客户端 wx0ff233d0d7cca432 无关

- 当前 Bug 的表现(可附上截图)

数据结构1如下:


日期1:{

       id1:{姓名1:{属性1:属性1的值;属性2 :属性2的值}}

       id2:{姓名2:{属性1:属性1的值;属性2 :属性2的值}}

}


或者数据结构2如下:


日期1:[[id1,姓名1,性别,时间],[id2,姓名2,性别,时间]]


使用服务端api doc.update或者collection.update写入如上两种结构的数据时,只会写入id1第一个字段的数据。使用command.set或者使用小程序端api则可以正确写入所有数据。但command.set是替换整个字段,不便局部增加数据,小程序端api则会有权限限制,均不能解决问题。


一句话:当数据结构为嵌套对象或数组时,服务端api只能update第一层第一个字段的数据。


典型场景:一个周期性签到应用,老师创建的doc,多名学生需要能分别写入自己的签到数据,而数据是分日期、人员、属性几个层次。


9.23日有人提出类似问题,未见答复。链接在此


因为小程序端api或者管理后台手动添加是可以支持嵌套的,所以问题应该是在服务端api上。且与客户端基础库无关(工具里云函数测试也是一样)。


希望能尽快确认问题并修复,否则就只能放弃云开发,整个应用重构,这个问题也严重制约了云开发的能力。

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

6 个回答

  • 半寸灰
    半寸灰
    2018-10-02

    我测试了下  如楼主所说

    2018-10-02
    有用 2
    回复
  • 同学你好我是赵老师
    同学你好我是赵老师
    2018-10-09

    你好,请问问题确认了吗?

    2018-10-09
    有用 1
    回复
  • 2018-10-26

    请问这个问题有解决了吗

    2018-10-26
    有用
    回复
  • 张吉(jimmyjzhang)
    张吉(jimmyjzhang)
    2018-10-03

    我们确认一下,多谢反馈

    2018-10-03
    有用
    回复 4
    • 2018-10-03

      假期加班,辛苦啦!

      希望能尽快确认,不管确认是bug或者是我错了……现在卡在这里,没法继续。前期已经做了好多工作,完全重构工作量太大。

      随时可配合测试。

      2018-10-03
      回复
    • 2018-10-06回复

      自己顶一下。

      2018-10-06
      回复
    • 张吉(jimmyjzhang)
      张吉(jimmyjzhang)
      2018-10-15回复

      这个问题已经修复了,麻烦更新一下最新的包

      2018-10-15
      回复
    • 乔治
      乔治
      2019-09-03回复张吉(jimmyjzhang)
      请问现在如果不知道是哪个具体下标,能否通过一个属性名来查询并修改另外一个属性值。
      2019-09-03
      回复
  • 2018-10-03

    假期估计没人解决了。路过的开发朋友,能验证的帮留言顶一下。或者有其它解决方案的也请大神指导。

    2018-10-03
    有用
    回复
  • 金彩万火
    金彩万火
    2018-10-02

    属性名称不能为纯数字。json数据结构有问题。

    2018-10-02
    有用
    回复 1
    • 2018-10-02

      不是这个原因。改成字符串或字母也是同样的问题。


      代码片段是随手写的,实际用小程序端api或者服务端command.set是可以写入的,日期会被转为字符串

      2018-10-02
      回复
登录 后发表内容