小编Jes*_*sen的帖子

在将结果发送到视图之前,无法在路由中更改 MongoDB/MongooseJS 的结果(Node js)

在我的路线中,我试图在将它发送到我的视图之前替换我从数据库中获得的任何值。

在这种情况下,我试图用用户名替换对用户的引用。但是我的 console.log 只是保持返回值不变。

app.get('/message/inbox', function(req, res) {
    var _id = req.user._id;
    var inbox = null;
    var users = null;
    async.parallel([
        function(callback){
            Inbox.find({to: _id}, callback);
        },
        function(callback){
            User.find({}, callback);
        }
    ],
    function(err, result){
        inbox = result[0];
        users = result[1];
        for(var i = 0; i < inbox.length; i++) {
            for(var j = 0; j < users.length; j++) {
                if(String(inbox[i].from) == String(users[j]._id)) {
                    inbox[i].from = users[j].local.username;
                    console.log(users[j].local.username);
                    console.log(inbox[i].from);
                    break;
                }
            } 
        }
        console.log(inbox);
    });
});
Run Code Online (Sandbox Code Playgroud)

这是我的控制台返回的内容:

some@email.com
540468daeb56d5081ade600d
[ { _id: 54084cacf212815422aabe94, …
Run Code Online (Sandbox Code Playgroud)

routes view mongoose mongodb node.js

4
推荐指数
1
解决办法
2006
查看次数

标签 统计

mongodb ×1

mongoose ×1

node.js ×1

routes ×1

view ×1