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

Preencha com base na condição em mangusto, mongoDB


O populate() tem uma opção que permite a filtragem, você pode tentar isso
Floorplan
.find({ 
    project: req.params.project, 
    tower: req.params.tower, 
    isDeleted: false 
})
.populate({
    path: 'flats',
    match: { isDeleted: false }
})
.exec(function(err, floorplan) {
    if (err) { return res.send(err); }
    if (!floorplan) { return res.status(401).json(); }
    res.status(200).json(floorplan);
});

ou
Floorplan
.find({ 
    project: req.params.project, 
    tower: req.params.tower, 
    isDeleted: false 
})
.populate('flats', null, { isDeleted: false })
.exec(function(err, floorplan) {
    if (err) { return res.send(err); }
    if (!floorplan) { return res.status(401).json(); }
    res.status(200).json(floorplan);
});