Pour $pullAll
pour fonctionner, vous devez faire correspondre exactement l'objet entier et ne pouvez pas utiliser un seul champ (même s'il s'appelle _id).
Vous devez donc également inclure le nom dans la commande de mise à jour (et les champs doivent également être dans le même ordre).
La commande que vous voulez vraiment utiliser est $pull
, qui fait ce dont vous avez besoin ici, c'est-à-dire qu'il correspond aux critères de filtrage :
Même s'il s'appelle "extraire sans tout", il extrait tous les éléments correspondants , pas un seul. Le "tout" signifie simplement que vous avez un filtre (alors que pullAll a plusieurs éléments à faire correspondre).