Menggunakan $lookup (yang melakukan gabungan luar kiri, mirip dengan sql) dalam pipa agregasi dapat menyelesaikan ini:
router.get('/',function(req,res,next){
AgendaCompromisso.aggregate([
{
$lookup:
{
from: "profissionais", //use the name of database collection not mongoose model
localField: "profissional",
foreignField: "_id",
as: "profissional_doc"
}
},
{
$unwind: "$profissional_doc" //remove array
},
{
$sort: {"profissional_doc": -1} // or {"profissional_doc": 1} for ascending
}
])
.exec( (err,data) => {
callback(err,data,res)
})
});
Sekedar catatan, untuk pencarian Anda memerlukan mongodb versi 3.2 atau lebih tinggi.