389 votes

Quel est le champ "__v" dans Mongoose

Je suis en train d'utiliser la version 3 de Mongoose avec la version 2.2 de MongoDB. J'ai remarqué qu'un champ __v a commencé à apparaître dans mes documents MongoDB. Est-ce lié à la versioning? Comment est-il utilisé?

0 votes

Si vous ne le voulez pas dans le résultat, utilisez _doc sur l'objet retourné par mongoose

0voto

KARTHIKEYAN.A Points 4408

Nous pouvons utiliser versionKey: false dans la définition du schéma

'use strict';

const mongoose = require('mongoose');

export class Account extends mongoose.Schema {

    constructor(manager) {

        var trans = {
            tran_date: Date,
            particulars: String,
            debit: Number,
            credit: Number,
            balance: Number
        }

        super({
            account_number: Number,
            account_name: String,
            ifsc_code: String,
            password: String,
            currency: String,
            balance: Number,
            beneficiaries: Array,
            transaction: [trans]
        }, {
            versionKey: false // défini sur false alors il ne sera pas créé dans mongodb
        });

        this.pre('remove', function(next) {
            manager
                .getModel(BENEFICIARY_MODEL)
                .remove({
                    _id: {
                        $in: this.beneficiaries
                    }
                })
                .exec();
            next();
        });
    }

}

-2voto

Shivraj Singh Points 1

Si vous enregistrez vos données par un formulaire HTML, vous devez définir le nom de la clé de votre schéma de la même manière que les noms de vos balises HTML.

0 votes

Je ne pense pas que cela réponde du tout à cette question.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X