Точка нотации MongoDB при обновлении - PullRequest
0 голосов
/ 23 сентября 2011

Ответ: Это была только ошибка 1.4.4.Обновление до 2.0 решило проблему.

У меня есть следующий объект в Mongo:

{
  _id: "foo",
  bar: "baz",
  list: {
    42: { some: "prop" }
  }
}

Я хочу добавить в «список» ключ 43, поэтому я делаюследующее:

db.collection.update({
  _id: "foo"
}, {
  $set: {
    "list.43": { some: "other prop" }
  }
})

Все хорошо, но 43 с новым подобъектом стали единственным ключом в свойстве списка.Зачем?Почему 42 ушло?

Ожидаемый результат:

{
  _id: "foo",
  bar: "baz",
  list: {
    42: { some: "prop" },
    43: { some: "other prop" }
  }
}

Реальный результат:

{
  _id: "foo",
  bar: "baz",
  list: {
    43: { some: "other prop" }
  }
}

Обновление: На самом деле, вопрос в том, какдобавить ключ во вложенный объект за один атомарный вызов?

1 Ответ

0 голосов
/ 23 сентября 2011

Это должно работать. Может быть, вы удалили его ранее с неправильным обновлением?

Попробуйте еще раз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...