MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Retorne certos campos com .populate() do Mongoose


Não estou completamente claro sobre o que você quer dizer com "retornar um campo", mas você pode usar um lean() query para que você possa modificar livremente a saída, preencher os dois campos e pós-processar o resultado para manter apenas o campo desejado:
.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;
    }
  });