我有一个同时包含hometeam和awayteam变量的Team,现在我有下面的代码来显示每场比赛的hometeam的名称,我将如何更改它以便显示每场比赛的hometeam和awayteam它看起来像以下内容:

[
  "Team 1", "Team 2",
  "Team 3", "Team 4"
]


例如,其中1/2队参加一场比赛,而3/4队参加另一场比赛。

  app.get('/homeTeamNames', function(req, res) {
    util.log('Serving request for url [GET] ' + req.route.path);
    Match.find({}, {'hometeam': 1}).populate('hometeam', {name: 1}).exec(function(err, teams) {
      var homeNames = [];
      for(var i = 0; i < teams.length; i++) {
        homeNames.push(teams[i].hometeam.name);
      }
      res.send(homeNames);
    });
  });

最佳答案

您可以像这样将多个populate调用链接在一起:

Match.find({}, {hometeam: 1, awayteam: 1})
    .populate('hometeam', {name: 1})
    .populate('awayteam', {name: 1})
    .exec(function(err, teams) { ...

关于javascript - Mongoose 有2个条件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15205923/

10-09 21:59