Para fazer a junção com duas tabelas, certifique-se de que o tipo de ambos os campos, ou seja,
localField
e foriegnField
deve ser o mesmo. Ou
Com mongodb 4.0 você pode alterar facilmente o tipo de
String
para ObjectId
usando $toObjectId
agregação productSchema.aggregate([
{ "$lookup": {
"from": "supplierSchema",
"let": { "supplierId": { "$toObjectId": "$supplierId" }},
"pipeline": [
{ "$match": { "$expr": { "$eq": ["$_id", "$$supplierId"] }}}
]
as: "supplier"
}}
])