簡體   English   中英

如何在 mongoose 中使用不同的鍵更新多個數組元素

[英]How to update multiple array elements with different keys in mongoose

我有包含列表的文檔。 例如,用戶文檔如下所示:

[
  {
    _id: 1,
    photos: [
      {_id: 1, url:'https://example.com/1.jpg', size: 100},
      {_id: 2, url:'https://example.com/2.jpg', size: 123}
    ]
  },
  {
    _id: 2,
    photos: [
      {_id: 1, url:'https://example.com/1.jpg', size: 100},
      {_id: 2, url:'https://example.com/2.jpg', size: 123}
    ]
  },
...
]

我想用以下數據更新這個文檔:

updateUserData: {
  _id: 2,
  photos: [{_id:1, size:200}, {_id:2, size:300}]
}

結果應該是:

[
  {
    _id: 1,
    photos: [
      {_id: 1, url:'https://example.com/1.jpg', size: 100},
      {_id: 2, url:'https://example.com/2.jpg', size: 123}
    ]
  },
  {
    _id: 2,
    photos: [
      {_id: 1, url:'https://example.com/1.jpg', size: 200},
      {_id: 2, url:'https://example.com/2.jpg', size: 300}
    ]
  },
...
]

如何通過在 mongoose 中使用一個命令來完成此操作?

我有包含列表的文檔。 例如,用戶文檔如下所示:

[
  {
    _id: 1,
    photos: [
      {_id: 1, url:'https://example.com/1.jpg', size: 100},
      {_id: 2, url:'https://example.com/2.jpg', size: 123}
    ]
  },
  {
    _id: 2,
    photos: [
      {_id: 1, url:'https://example.com/1.jpg', size: 100},
      {_id: 2, url:'https://example.com/2.jpg', size: 123}
    ]
  },
...
]

我想用以下數據更新這個文檔:

updateUserData: {
  _id: 2,
  photos: [{_id:1, size:200}, {_id:2, size:300}]
}

結果應該是:

[
  {
    _id: 1,
    photos: [
      {_id: 1, url:'https://example.com/1.jpg', size: 100},
      {_id: 2, url:'https://example.com/2.jpg', size: 123}
    ]
  },
  {
    _id: 2,
    photos: [
      {_id: 1, url:'https://example.com/1.jpg', size: 200},
      {_id: 2, url:'https://example.com/2.jpg', size: 300}
    ]
  },
...
]

如何通過在 mongoose 中使用一個命令來完成此操作?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM