javascript - Mongoose .populate 有 2 个条件

标签 javascript mongoose

我有一支同时具有主队和客队变量的球队,目前我有下面的代码来显示每场比赛的主队名称,我将如何更改它以便我同时显示主队和客队每场比赛都会看起来像下面这样:

[
  "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 .populate 有 2 个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15205923/

相关文章:

mongodb - InsertMany 在 mongodb 中不起作用

mongodb - $lookup 使用 Mongoose

Javascript 正则表达式测试相同的字符串但得到不同的结果

javascript - 我正在 localstorage 中存储一个值并尝试在 if 语句中使用它,但我只得到 null,我也对该值进行了字符串化

javascript - CSS 打印内容溢出页脚。如何解决?

Node.js - 如何使用 mongoose db 创建一个唯一的 id

javascript - 使用变量而不是 $(this) 是一种好习惯吗?

javascript - JS/J查询 : Initiate window resize without actually resizing

javascript - Mongoose 嵌套对象不更新

javascript - 如何更新 Mongoose 中的数组元素 - MongoDB