我有这些猫鼬模式:

var ItemSchema = new Schema({
    "pieces": Number,
    "item": { type: Schema.Types.ObjectId, ref: 'Items' }
});

var cartSchema= new Schema({
    "items": [ItemSchema]
});

但是当我想在项目中推送一个新项目时,Mongoose会在新项目上添加一个ID字段,但我不明白为什么。

最佳答案

如果要添加不带_id字段的项,则应在{ _id: false }中添加ItemSchema

var ItemSchema = new Schema({
    "pieces": Number,
    "item": { type: Schema.Types.ObjectId, ref: 'Items' }
}, { _id: false });

08-03 22:54