2017-01-27 4 views
0

お願いします。 インターネットを検索したところ、解決策が見つかりませんでした。 子のクエリを作成して親のパラメータを使用する方法を教えてください。子のクエリを作成して親のパラメータを使用する

var Photos = new Schema({ 
    photo_id: {type: String, required: true}, 
    photo_path_low: { type: String, required: true } 
}); 

var Users = new Schema({ 
    user_id: { type: String, required: true }, 
    count_coins: { type: Number, default: 20 }, 
    photos_relation: [Photos] 
}); 
... 
... some code 
... 
PhotoModel.findOne().where('parent.count_coins').gt(1)..... // parent for Example 
+0

あなたのフォトスキームは、ユーザーへの参照を持っていません。 – Paul

+0

ユーザーへの参照を追加するにはどうすればよいですか?難しくない場合の例を挙げてください。 – user3424119

+0

必要なものがすべてそろっているドキュメントを読む –

答えて

1

は、この場合のためのオブジェクトの参照があります:

var Photos = new Schema({ 
    photo_id: {type: String, required: true}, 
    photo_path_low: { type: String, required: true } 
    createdBy: {type: mongoose.Schema.Types.ObjectId, ref: 'User'}, 
}); 

その後、あなたはあなたのクエリを作るとき、あなたはこのような参照を取り込むことができます。

Photo.findOne({_id: 123}) 
.populate('createdBy') 
.exec(function(err, post) { 
    // do stuff with post 
}); 

あなたはで詳細を見つけることができますthis mongoose documentation

関連する問題