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

Preencher array aninhado no mangusto


O Mongoose 4.5 suporta isso
Project.find(query)
  .populate({ 
     path: 'pages',
     populate: {
       path: 'components',
       model: 'Component'
     } 
  })
  .exec(function(err, docs) {});

E você pode participar de mais de um nível profundo.

Edit 17/03/2021:Esta é a implementação da biblioteca, o que ela faz nos bastidores é fazer outra consulta para buscar coisas para você e depois juntar na memória. Embora este trabalho, mas nós realmente não devemos confiar. Isso fará com que seu design de banco de dados se pareça com tabelas SQL. Esta é uma operação dispendiosa e não escala bem. Por favor, tente projetar seu documento para que ele reduza a junção.