MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

mangouste - sélectionnez des champs spécifiques dans Model.create

Si vous jetez un œil au code source de mongoose , vous pouvez voir que Model.create renvoie une promesse avec les documents créés/insérés. Il n'y a aucun moyen de spécifier des options de filtrage pour ne renvoyer que des champs spécifiques.

Bien sûr, vous pouvez faire un .find() en combinaison avec un .select() appelez après avoir créé/inséré un nouvel enregistrement, mais cela entraînerait une requête DB supplémentaire pour chaque insertion, ce qui n'a pas beaucoup de sens.

Au lieu de cela, vous pouvez simplement renvoyer les propriétés souhaitées à partir du document renvoyé, car vous savez qu'un nouveau document a été inséré avec succès avec les données fournies, lorsque la promesse a été résolue. Vous pouvez donc simplement faire :

res.send({title: generatedEvent.title, description: generatedEvent.description});