1

次のようなスキーマAがあるとします。

{ b: { type: Schema.Types.ObjectId, ref: 'B' }

次のようなタイプB:

{ c: { type: Schema.Types.ObjectId, ref: 'C' }

タイプCは次のようになります。

{ name: String }

MongooseJSのpopulateユーティリティを使用して、複数の参照を介してドキュメントを取得する方法はありますか?この例では、次のようにしてAのbを見つけることができます。

A.findOne({ id: someId })
    .populate('b')
    ...

しかし、Aを介してbのcに到達できますか?

4

2 に答える 2

3

現在はありません。これに対するいくつかのサポートはすぐに来ています。

于 2012-09-24T20:07:54.180 に答える
0

2年で状況が変わったと思います。次のModel.populate()の使用についてはどうでしょうか。

A.findOne({id: someId})
 .populate('b')
 .exec()
 .then(function(data) {
         // returns a promise about populating a.b.c:
         return C.populate(data, {path: 'b.c'});
     });

詳細については、3.6'リリースノートをご覧ください: https ://github.com/LearnBoost/mongoose/wiki/3.6-Release-Notes#added-modelpopulatedocs-opts-cb

于 2014-08-11T14:34:00.100 に答える