Warum sind meine Mongoose 3.8.7 schema Getter und setter ignoriert?

Während der Arbeit mit Node.js, Mongoose und MongoDB habe ich festgestellt, dass mein Mongoose schema get-und Set-Methoden werden nicht ausgelöst, wenn ich eine findOne-Abfrage.

Ich fand einen alten thread, die vermuten lässt, dass es gab ein Problem mit Getter und setter in der version 2.x, aber es besagt, dass es hat sich inzwischen geklärt und ich bin mit der neuesten version von Mongoose (3.8.7).

Hier ist ein Teil von meinem schema

function testGetter(value) {
        return value + " test";
}

/**
* Schema
*/

var schema = new Schema({
        username: { type: String, required: true, unique: true, get: testGetter }
});

//I have also tried this.

schema.path('username').get(function (value, schemaType) {
        return value + " test";
});

Hier, wie ich die Abfrage ausführen

Model
.findOne(conditions, fields, options)
.populate(population)
.exec(function (error, doc) {
        callback(doc, error);
});

Antwortet er mit einem Benutzernamen Wert, der fehlt die "test" - post-Korrektur. Mache ich etwas falsch hier? Jede Hilfe wäre sehr geschätzt werden!

Zusätzliche Informationen

Dies ist das Ergebnis der finden:

{
    "username": "Radius"
}

Dies ist der Wert des Schemas.Pfade.Benutzername.Getter nach der Anwendung einer durch eine der beiden oben beschriebenen weisen:

[ [Function: testGetter] ]
Schreibe einen Kommentar