programing

Mongoose - 한 함수 호출에서 여러 문서 제거

megabox 2023. 5. 14. 10:30
반응형

Mongoose - 한 함수 호출에서 여러 문서 제거

설명서에는 deleteMany() 메서드가 있습니다.

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

하나의 공통 속성이 있고 다른 속성이 다른 여러 문서를 제거하려고 합니다.이와 같은 것:

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

이에 대한 올바른 구문은 무엇입니까?

당신이 찾고 있는 것은$in연산자:

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

여기에 있는 설명서: https://docs.mongodb.com/manual/reference/operator/query/in/

사용할 수도 있습니다.

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

난 바꿔야 했다.id로._id작동하기 위해:

Site.deleteMany({ _id: [1, 2, 3] });

이 문제는 정의된 ID가 없고 대신 기본 ID가 사용되는 경우에 발생합니다.

"Mongoose는 스키마 생성자에 전달되지 않은 경우 기본적으로 _id 필드를 각 스키마에 할당합니다." mongoose 문서

네.$in완벽한 솔루션입니다.

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

언급URL : https://stackoverflow.com/questions/44467318/mongoose-remove-multiple-documents-in-one-function-call

반응형