Ich habe die folgende Schnellstraße:Aufschalten ein Mungo Modell Methode
app.post('/users/me',(req, res) => {
var body = req.body.email;
User.find({
email: body
}).then((user) => {
res.send({user});
}, (e) => {
res.status(400).send(e);
});
});
Auf meinem User-Modell ich die folgende Methode haben die Ergebnisse zurückgegeben begrenzt auf E-Mail und _id:
UserSchema.methods.toJSON = function() {
var user = this;
var userObject = user.toObject();
return _.pick(userObject, ['_id', 'email']);
};
In den meisten Meine Routen das ist genau was ich will aber auf dieser speziellen Route möchte ich noch weitere Felder zurückgeben. Wie kann ich die Modellmethode überschreiben/umgehen und meine Felder zurückgeben lassen?
Dies funktioniert nicht. Ich habe einige Conole-Logging hinzugefügt und ich sehe, dass in der Model-Methode die If (user.private) wird falsch zurückgegeben wird so überspringt, um die else. – dwax
Dies sollte mit einem einzelnen Objekt funktionieren, aber wenn mehrere Objekte zurückgegeben werden, muss man über jedes Objekt iterieren, um den 'privaten' Wert zu setzen – sidgate