基本的に、最終的な目標は、すべての DB クエリに既定のスコープを提供することです。これは、すべてのクエリを一連のオブジェクト ID に制限することを意味します。私の質問は、ID でクエリを実行し、クエリがオブジェクト ID のリストに限定されるようにするにはどうすればよいですか?
私はこのようなことをしたいと思います:
db.posts.findOne({_id: ObjectId("50eb4a874947fb00e3cc0612")})
.where({_id: { $in: [ObjectId("50eb4a874947fb00e3cc0610"),ObjectId("50eb4a874947fb00e3cc0611")] }});
ご覧のとおり、クエリされた ID がオブジェクト ID の $in 配列にないため、クエリは結果を返さないはずです。
ところで、上記のクエリでは、次のようなエラーが表示されますdb.posts.findOne({_id: ObjectId("50eb4a874947fb00e3cc0612")}).where is not a function (shell):1