sql >> Base de Datos >  >> NoSQL >> MongoDB

Devuelve ciertos campos con .populate() de Mongoose

No tengo completamente claro lo que quiere decir con "devolver un campo", pero puede usar un lean() consulta para que pueda modificar libremente la salida, luego complete ambos campos y postprocesar el resultado para mantener solo el campo que desea:

.lean().populate('user', 'email.address facebook.address')
  .exec(function (err, subscription){ 
    if (subscription.user.email.address) {
        delete subscription.user.facebook;
    } else {
        delete subscription.user.email;
    }
  });