「Binders」というコレクションがあります。このコレクションには、「Docs」スキーマを参照する「docs」というフィールドがあります。
findOne() を使用して ID で「バインダー」をプルしたいのですが、これは問題ありません。
しかし、フィールド比較によって返される「ドキュメント」を制限したい
私はマングースにやや慣れていませんが、疑似クエリがあれば...
Binder.findOne({_id: req.binder._id}, {$where {docs.type = 'type1'}}, function(error, binder) {
// So this would return my full binder but only the docs where their .type = 'type1'
});
私が迷子になるのは、スキーマに基づく制限です
{$where {docs.type = 'type1'}}
したがって、バインダーを取り出したときに 50 のドキュメントがあり、タイプ 1 のドキュメントがなかった場合でも、バインダー情報は取得できますが、Docs フィールドにはドキュメントがありません。
それが理にかなっていることを願っています。