MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come utilizzare MongoDB $ne sulla proprietà dell'oggetto nidificato

Rispondendo alla tua domanda su come usare $ne :

L'uso di $ne è il seguente:

"field":{
  "$ne": yourValue
}

Nella tua query dovrebbe essere come:

"user._id": {
  "$ne": req.user.id
}

Esempio qui

$ne l'operatore restituirà tutti i documenti in cui il valore del campo non corrisponde al valore specificato.

Come hai fatto, per accedere al campo nidificato è necessario utilizzare la notazione del punto.

Inoltre, per assicurarti che funzioni, se il tuo schema definisce _id come ObjectId forse è necessario analizzare req.user.id a ObjectId .
Ma se nel tuo schema è presente una stringa, dovrebbe funzionare.

Quindi prova (per niente testato):

const injected = {
  'user._id': { "$ne": req.user.id }
};