MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Perché viene aggiunto un _id con ObjectID quando si utilizza $ push di MongoDB per aggiungere un nuovo oggetto a un array?

Puoi disabilitare il _id campo definendo esplicitamente le tournamentSessions array con il proprio schema in modo da poter impostare il suo _id opzione per false :

var Player = mongoose.model('Player', Schema({
    createdAt: { type: Date, default: Date.now },
    lastActiveAt: Date,
    clientVersion: String,
    tournamentSessions: [new Schema({
        tournament: { type: Schema.Types.ObjectId, ref: 'Tournament' },
        level: Number,
        status: String,
        score: Number
    }, { _id: false })],
    friends: Array
}));