Svarar på din fråga om hur du använder $ne
:
Användningen av $ne
är som följer:
"field":{
"$ne": yourValue
}
I din fråga bör det vara så här:
"user._id": {
"$ne": req.user.id
}
Exempel här
$ne
operatören returnerar alla dokument där fältvärdet inte matchar det angivna värdet.
Som du har gjort måste du använda punktnotationen för att komma åt det kapslade fältet.
För att säkerställa att det fungerar, om ditt schema definierar _id
som ObjectId
kanske är nödvändigt att analysera req.user.id
till ObjectId
.
Men om det finns en sträng i ditt schema så borde det fungera.
Så försök (inte testat alls):
const injected = {
'user._id': { "$ne": req.user.id }
};