我使用MongoDB和Mongoose 进行NodeJS REST项目:
我的模型模式是:
var playerSchema = new mongoose.Schema({
name: String,
team: mongoose.Schema.Types.ObjectId
})和服务器端
app.post('/players', function(req, res) {
Players.find(function(err, players) {
res.json(players);
});
});响应是:
...
{
"_id": "511a6010e6ca7b0fe0af02ff",
"name": "player-1",
"team": "511a53e2e6ca7b151c09ce8d"
}
...但我想要的是:
{
"_id": "511a6010e6ca7b0fe0af02ff",
"name": "player-1",
"team": {
_id: "511a53e2e6ca7b151c09ce8d"
name: "team-1"
}
}我做错什么了?还是我还没有真正理解ObjectId?
谢谢!
发布于 2013-02-14 07:39:41
您只获取具有团队文档id的球员文档。
因此,对于每一个球员,你也必须得到团队医生。
Players.find(function(err, players) {
for(var i in players){
Team.findById(players[i].team,function(error,teams){
players[i].team = teams;
})
}
res.json(players);
});https://stackoverflow.com/questions/14836374
复制相似问题