staramy się dopasować obiekt _id do mdłego obcego pola, który nie działa. poszukuje dokumentów mondodb. oni nie mają nic na ten temat. Czy jest to możliwe z zapytaniem mongodb, czy nie?Zapytanie mongodb za pomocą obiektu _id w lookup localField
_id jako obiekt w dokumencie
"_id" : ObjectId("56ab6663d69d2d1100c074db"),
MID jako ciąg w dokumencie
"mId" : "56ab6663d69d2d1100c074db",
kwerendy jak poniżej:
collection.aggregate([
{
$lookup:
{
from: "category",
localField: "_id",
foreignField: "mId",
as: "categories"
}
}
])
UDPATE
jako podsumowanie, mongodb nie obsługuje typu przymusu w $ lookup. więc potrzebuję powyżej pracy, muszę mieć _id i mId jako ObjectId wpisz w samych dokumentach, aby działało.
Co jest 'mId'? Jeśli jest to również ObjectId, powinno działać poprawnie. – BatScream
to obecnie nie jest ObjectId. więc musimy ustawić klucze obce jako ObjectId, aby to zadziałało? – jit
To nie jest wymagane. Operator '$ lookup' działałby tak długo, jak' localField === foreignField'. Zwróć uwagę, że 'strict' jest równy. – BatScream