web-dev-qa-db-ja.com

Mongoose-1回の関数呼び出しで複数のドキュメントを削除します

ドキュメントにはdeleteMany()メソッドがあります

_Character.deleteMany({ name: /Stark/, age: { $gte: 18 } }, function (err) {});
_

1つの共通のプロパティと他のプロパティが異なる複数のドキュメントを削除したい。このようなもの:

Site.deleteMany({ userUID: uid, id: [10, 2, 3, 5]}, function(err) {}

これに適切な構文は何でしょうか?

18
Maciej Krawczyk

あなたが探しているのは$in演算子:

Site.deleteMany({ userUID: uid, id: { $in: [10, 2, 3, 5]}}, function(err) {})

ここのドキュメント: https://docs.mongodb.com/manual/reference/operator/query/in/

38
Kevin

使用することもできます。

Site.remove({ userUID: uid, id: { $in: [10, 2, 3, 5]}}, function(err, response) {});
15
laxman

はい、_$in_は完璧なソリューションです:

Site.deleteMany({ userUID: uid, id: { $in: [10, 2, 3, 5] } }, function(err) {})

0
ramana vv

あなたが探しているのは$in演算子:

Site.deleteMany({ userUID: uid, id: { $in: [10, 2, 3, 5]}}, (err,sites) => {

  console.log("deleted sites"+sites);

});
0
ramana vv