Замена встроенного документа в массиве в MongoDB

Есть ли простой способ заменить весь встроенный документ в массиве? Скажем, заменить:

{
   "_id" : "2",
      "name" : "name2",
      "xyz..." : "xyz2..."
}

на:

{
   "_id" : "2",
      "name" : "name6",
      "xyz..." : "xyz5..."
      "morefields..." : "fields..."
}

Поиск _id (встроенного). Или мне нужно заменить каждое поле по отдельности, используя $set?

{
  "_id" : "2",
  "users" : [{
      "_id" : "1",
      "name" : "name1",
      "xyz..." : "xyz1..."
    }, {
      "_id" : "2",
      "name" : "name2",
      "xyz..." : "xyz2..."
    }],
  "name" : "main name"
}
13
задан Fredrik L 8 February 2012 в 20:12
поделиться