Lors de l'interrogation des documents en utilisant collection.find
J'ai commencé à recevoir l'avertissement suivant dans ma console
DeprecationWarning : l'option [fields] de collection.find est obsolète et sera supprimée sera supprimée dans une version ultérieure
Pourquoi est-ce que je vois cela et comment puis-je le réparer ? (Alternatives possibles)
EDIT : Requête ajoutée
Session
.find({ sessionCode: '18JANMON', completed: false })
.limit(10)
.sort({time: 1})
.select({time: 1, sessionCode: 1});
Mongoose version 5.2.9
0 votes
Avez-vous essayé d'utiliser collection.find(query).limit(1).project({name:1}) ?
0 votes
Bonjour @DanieleTassone à chaque fois que j'utilise find() cet avertissement apparaît
0 votes
Pourriez-vous afficher votre requête complète
1 votes
Le pilote mongodb natif est un élément que Mongoose utilise en interne pour traiter avec MongoDB. Si Mongoose ne respecte pas certaines nouvelles "règles", un avertissement est renvoyé. Avec le pilote natif, vous recevrez cet avertissement si vous utilisez "fields option" au lieu de la fonction curseur par exemple. Jetez un coup d'oeil ici : github.com/Automattic/mongoose/issues/6667
1 votes
Il y a un problème sur github est ouvert... Donc jusqu'à ce que ce problème soit résolu, vous pouvez utiliser la version Mangouste. 5.2.8
0 votes
Faites-moi savoir si vous avez besoin d'aide pour rétrograder à la version 5.2.8.
npm install mongoose@5.2.8
devrait fonctionner. Le site fixer a déjà été fusionné à master. La version 5.2.10 devrait donc comporter ce correctif lorsqu'elle sera publiée.0 votes
Merci @Veeram :)