私は初めて Mongoose を使用していますが、単純な作業と思われることを達成しようとしています。clients
クライアント ID の配列で構成されるプロパティを含むユーザー ドキュメントがあります。例として、私のドキュメントは次のようになります。
{
email: "nick@movementstrategy.com",
password: "$2a$10$xZVzMYgyoyT.biOMDrBlRe3HNHY5A6lXga6uc8b/cnIAX/khQ7ep2",
modified: ISODate("2013-01-16T00:13:56.894Z"),
created: ISODate("2013-01-16T00:13:56.894Z"),
_id: ObjectId("50f5f0c4d6bbbcc6ce000002"),
clients: [
"50f6e118e0ccf9a1e9000001",
"50f6e12be0ccf9a1e9000002"
],
__v: 0
}
remove(); を呼び出したときにクライアントの依存関係を削除するミドルウェアを作成しました。
clientSchema.pre('remove', function(next) {
Sweepstakes.remove({client_id: this._id}).exec();
Submission.remove({client_id: this._id}).exec();
// find users with this._id present in clients, and remove from array
next();
});
ここで、クライアント ID が存在するすべてのユーザーを検索しclients
、ID を削除して、ユーザーを更新する必要があります。
ID が存在するすべてのユーザーを簡単にクエリし、ループして各ユーザーを個別に保存できることはわかっています...やるべきこと - ドキュメントでそれを見つけるのに苦労しているだけです。
Mongoose を使用してこれを行う最も効率的な方法は何ですか?