1
我想要想出一種方法來更新mongo中對象數組中的值。我有一個看起來像更新MongoDB數組中的值
[
{ CourseName: '',
Sessions: [
{
_id: null, //oops I didn't set this in the import
Name: 'blah',
Location: 'moon'
}]
}
]
現在我需要設置_id字段。我試着做
db.Course.update({'Sessions._id': null}, {$set:{'Sessions.$._id': ObjectId()}}, false, true)
的成文規定,但我遇到了這個bug http://jira.mongodb.org/browse/SERVER-1055這意味着我不能這樣做。是否有一些語法可以讓我僅僅通過手動來更新集合並更新每條記錄?我嘗試了一些東西,如
db.Course.find().forEach(
function(course)
{
course.Sessions.forEach(function(session)
{
session._id=ObjectId();
course.Save(session); //Don't know how to save a single object
});
});
但他們沒有工作。我正在尋找一些方法來在每個會話中更新該值。
美麗,謝謝。 – stimms 2010-06-11 13:39:08
和mongo cli? – 2013-11-26 19:09:01