Eh bien, je ne peux pas voir la solution de Tony... donc je dois m'en occuper moi-même...
Si vous n'avez pas besoin de version_key, vous pouvez simplement :
var UserSchema = new mongoose.Schema({
nickname: String,
reg_time: {type: Date, default: Date.now}
}, {
versionKey: false // Vous devez être conscient de la conséquence après avoir mis à false
});
Le fait de définir versionKey sur false signifie que le document n'est plus versionné.
Cela pose problème si le document contient un tableau de sous-documents. Un des sous-documents pourrait être supprimé, réduisant la taille du tableau. Plus tard, une autre opération pourrait accéder au sous-document dans le tableau à sa position initiale.
Comme le tableau est maintenant plus petit, il pourrait accidentellement accéder au mauvais sous-document dans le tableau.
Le versionKey résout ce problème en associant le document à un versionKey, utilisé par mongoose en interne pour s'assurer qu'il accède à la bonne version de la collection.
Plus d'informations peuvent être trouvées à l'adresse : http://aaronheckmann.blogspot.com/2012/06/mongoose-v3-part-1-versioning.html
0 votes
Si vous ne le voulez pas dans le résultat, utilisez _doc sur l'objet retourné par mongoose