mongo db にグループ コレクションがあり、グループのメンバーを埋め込みリストに格納します。
{ _id: 9876,
name: group138,
members: [{ login: user1, password: user1pass},
{ login: user2, password: user2pass}],
path: '/group1/group13/',
}
(グループ階層を処理するために、実体化されたパスを持つモデル ツリー構造を使用します ( http://docs.mongodb.org/manual/tutorial/model-tree-structures-with-materialized-paths/ ))。
複数のデータベース クエリ (およびコールバック呼び出し) を回避するために、このグループに属する 2 人のユーザーを同じコレクションに含める方法を見つけたかったのです。
ユーザーがログインしたら、そのユーザーとそのユーザーが属するグループを取得する必要があります。ログインとパスワードを同時にユーザーに照会できないことがわかりました。
db.groups.find({$and: [{"members.login": "user1pass"}, {"members.password" : "user2pass"}]})
パスワードが正しいものではないため、返すべきではないレコードを返します。ログインとパスワードをチェックするために正しいリクエストを実行するにはどうすればよいですか?