【发布时间】:2017-02-12 21:44:02
【问题描述】:
我有两个 Mongoose 架构/模型。一个给Team 的玩家,一个给Players 自己。
团队:
// Other less relevant stuff
goalkeepers: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'Player'
}],
defenders: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'Player'
}],
midfielders: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'Player'
}],
attackers: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'Player'
}],
points: Number
播放器:
// Other less relevant stuff
points: Number
问题是我需要 Team 点是每个位置数组中 Players 的所有点的总和。
我目前正在研究的领域是 MongoDB 聚合函数,特别是 $sum,但没有一个示例包含 ref 对象。还需要先填充对象,以便读取点值。
我觉得以前一定有人遇到过这个问题,但不幸的是我的搜索是徒劳的。
【问题讨论】:
标签: javascript node.js mongodb mongoose aggregation-framework