私はSQLのバックグラウンドから来たので、テーブルを結合するSQLでクエリを書くのは非常に簡単ですが、mongoose/mongodbでそれが欠けていると思います
基本的に、Subscriber_ID (ユーザー コレクション内のドキュメントにマップされます) を知っています。
ユーザーが属するすべてのプロジェクトを含むプロジェクト グループをプルしたいので、これを疑似 SQL で記述すると、次のようになります。
Select
ProjectGroup.title,
Project.Title
FROM
ProjectGroup,
Project,
User
WHERE
User.id = req.body.subscriber_id
AND Project.subscriber_id = User.id
AND ProjectGroup.project_id = Project.id
タイプがスキーマにマッピングされているため、mongoose/mongodbで同様の結合を行う方法が必要ですか?
私のスキーマ.....
プロジェクト グループ スキーマ
var ProjectGroupSchema = new Schema({
title : String
, projects : [ { type: Schema.Types.ObjectId, ref: 'Project' } ]
});
プロジェクト スキーマ
var ProjectSchema = new Schema({
title : {type : String, default : '', required : true}
, subscribers : [{ type: Schema.Types.ObjectId, ref: 'User' }]
});
ユーザースキーマ
var UserSchema = new Schema({
first_name : {type: String, required: true}
, last_name : {type: String, required: true}
});
ありがとうございました!