首页 > 解决方案 > Express-Mongoose如何传递多个集合来查看

问题描述

我正在尝试使用下面的代码将多个 mongoDB 查询传递给我的 EJS 视图,但由于某种原因,只有“mvl”被传递下来。“附加”仍然不可用(无法使任何值显示在视图上),同时当我尝试加载视图时不会引发错误(没有说“附加未定义”。

router.get("/mvl", function(req, res) {
    index.find({}, function(err, mvl) {
        if (err) {
            console.log(err);
        } else {
            extra.find({}, function(err, extras) {
                if (err) {
                    console.log(err);
                } else {
                    console.log(extras);
                }
                res.render("index", { mvl: mvl, extras: extras });
            });
        }

    });

为了完成这项工作,需要做什么?

干杯,

伊恩

标签: expressmongooseejs

解决方案


想出了如何像这样传递额外的集合

router.get("/mvl", function(req, res) {
    index.find({}, function(err, mvl) {
        if (err) {
            console.log(err);
        } else {

            extra.find({}, function(err, extras) {
                if (err) {
                    console.log(err);
                } else {
                    console.log(extras);
                    res.render("index", { mvl: mvl, extras: extras });
                }
            });
        }
    });
});

集合是一个数组,所以你想在你的 ejs 中调用这样的信息

<%= extras[0].youStuff %>


推荐阅读