Uw vraag beantwoorden over het gebruik van $ne
:
Het gebruik van $ne
is als volgt:
"field":{
"$ne": yourValue
}
In uw zoekopdracht zou moeten zijn als:
"user._id": {
"$ne": req.user.id
}
Voorbeeld hier
$ne
operator zal alle documenten retourneren waarvan de veldwaarde niet overeenkomt met de gegeven waarde.
Zoals je hebt gedaan, moet je de puntnotatie gebruiken om toegang te krijgen tot het geneste veld.
Om er zeker van te zijn dat het werkt, als uw schema _id
. definieert als ObjectId
misschien is het nodig om req.user.id
te ontleden naar ObjectId
.
Maar als in je schema een string staat, dan zou het moeten werken.
Dus probeer (helemaal niet getest):
const injected = {
'user._id': { "$ne": req.user.id }
};