Sie sollten $not
verwenden $in
mit $expr
Ausdruck, Weil $nin
ist ein Abfrageoperator, nicht für Aggregationsausdrücke,
- Ein weiterer Fix, den Sie benötigen, um eine Variable mit
let: { following: "$following"}
zu erstellen und innerhalb der Pipeline$$following
verwenden , da die Lookup-Pipeline keinen Zugriff auf Felder ohne Referenz zulässt,
{
$lookup: {
from: "Users",
let: {
following: "$following"
},
pipeline: [
{
$match: {
$expr: {
$not: {
$in: [
"$_id",
"$$following"
]
}
}
}
}
],
as: "result"
}
}
Arbeitsspielplatz:https://mongoplayground.net/p/08OT6NnuYHx