【问题标题】:Updating/Adding Sub-Document on Sub Document in Mongoose在 Mongoose 的子文档上更新/添加子文档
【发布时间】:2015-07-30 16:35:00
【问题描述】:

如何在 mongoose 的子文档中更新/添加子文档, 我有 Tree Json 的示例数据,如下所示:

orgchart:
 [
  {
    level: 0,
    name: Division 0,
    child: [
     {
       level: 1,
       nama: Division 1,
       child: [
        {
          level: 2,
          nama: Sub Division 2,
          child: [ here division X ]
        }
       ]
     }
  },
 ]

我尝试使用 parent.push 但只添加了 1 个子文档,当我尝试在子文档中使用更多子文档时总是失败并显示消息“TypeError: Cannot call method 'push' of undefined”

你有这个问题的线索吗? 谢谢

【问题讨论】:

  • 您能否提供一个代码示例或您正在执行的查询?

标签: node.js mongoose


【解决方案1】:

在这种情况下,您最好调用 .findOne() 以获取包含要更新的子文档的文档,将子文档推送到数组,然后在文档上调用 .save()

真的,如果您有嵌入子文档的子文档,您应该考虑为子文档创建一个集合,并可能为这些子文档中嵌入的文档创建一个集合。您可以将_id 引用存储在父文档中,并使用您的查询调用populate(...)

我会提供一个示例,但我不确定您要完成什么。最初它看起来像糟糕的数据建模,但我不确定你到底想要完成什么。

【讨论】:

    【解决方案2】:

    很抱歉打扰您,tsturzl 先生 我从Mongodb update deeply nested subdocument得到了解决方案

    谢谢

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-17
      • 2021-12-23
      • 2015-07-12
      • 2014-11-27
      • 2012-10-27
      • 1970-01-01
      相关资源
      最近更新 更多