选择基于Express Route的Mongoose模型

时间:2015-06-23 07:14:48

标签: express routing mongoose

我认为这可能是一个基本问题,但寻找最好的方法。

我正在构建一个快速应用程序,它应该根据路线路由到四种不同的Mongoose模型之一。

这样的事情:

<!DOCTYPE html>
<html>
  <body>
    <p id="display"></p>
    <script>
      var i;
      for (i = 0; i < 11; i++) {
        var disp = "the number is " + i;
        console.log(disp);
      }
      disp = document.getElementById("display").innerHTML;
    </script>
  </body>
</html>

我有4个猫鼬模型:trial1,trial2,trial3,trial4。我想URL的试用参数来确定查询哪个集合。显然上面的工作没有成功,但是我应该做些什么而不是四次改写路线呢?

提前致谢!

1 个答案:

答案 0 :(得分:1)

您可以按名称获取模型:

var mongoose = require('mongoose');

app.get('/:trial', function(req, res){
    var trial = req.params.trial;
    mongoose.Model(trial).find(function(err, records) {
        if (err) {
            // Return when we end the response here...
            return res.send(err);
        }
        res.json(records); // returns all trial records in JSON format
    });
});

根据具体情况,我会首先验证trial的值(因此请求/User不会将所有用户转储到客户端)。