Để tạo liên kết với hai bảng, bạn phải đảm bảo rằng loại cho cả hai trường, tức là localField
và foriegnField
nên giống nhau.
Hoặc
Với mongodb 4.0 bạn có thể dễ dàng thay đổi loại String
thành ObjectId
bằng cách sử dụng $toObjectId
tổng hợp
productSchema.aggregate([
{ "$lookup": {
"from": "supplierSchema",
"let": { "supplierId": { "$toObjectId": "$supplierId" }},
"pipeline": [
{ "$match": { "$expr": { "$eq": ["$_id", "$$supplierId"] }}}
]
as: "supplier"
}}
])