Odpowiadając na Twoje pytanie dotyczące korzystania z $ne
:
Użycie $ne
wygląda następująco:
"field":{
"$ne": yourValue
}
Twoje zapytanie powinno wyglądać następująco:
"user._id": {
"$ne": req.user.id
}
Przykład tutaj
$ne
operator zwróci wszystkie dokumenty, w których wartość pola nie pasuje do podanej wartości.
Jak już zrobiłeś, aby uzyskać dostęp do zagnieżdżonego pola, użyj notacji z kropkami.
Ponadto, aby upewnić się, że działa, jeśli twój schemat definiuje _id
jako ObjectId
być może konieczne jest przeanalizowanie req.user.id
do ObjectId
.
Ale jeśli w twoim schemacie jest łańcuch, to powinno działać.
Więc spróbuj (w ogóle nie testowane):
const injected = {
'user._id': { "$ne": req.user.id }
};