0

我的架构是:

var VenueSchema = new Schema({
    _id: Schema.Types.ObjectId
    ,rating : Number
})

我正在尝试:

var v = new Venue()
v.name = venue.name
Venue.update({ id : Schema.Types.ObjectId(venue.id)}, v, {upsert: true})  

但是数据库中没有任何内容。我哪里错了?

4

1 回答 1

3

您需要在调用中使用_id而不是id和一个普通的 JS 对象update,Mongoose 将为您执行 ObjectId 转换。试试这个:

Venue.update({ _id : venue.id}, {name: venue.name}, {upsert: true});

请注意,name它不会出现在您的架构中,这可能不是您想要的。

于 2012-12-11T15:30:56.613 回答