簡體   English   中英

從NodeJS中的MongoDB計算兩次之間的差異,然后發送給nunjucks

[英]Calculate the difference between two times from MongoDB in NodeJS and send to nunjucks

我一直以此帖子為指導,以創建一些NodeJS代碼以連接到MongoDB實例,進行身份驗證,然后計算兩個時間戳之間的差異,然后將其發送到nunjucks模板。 我的代碼是:

app.get('/test', function(req,res){

    db.authenticate('USER', 'PASSWORD', function(err, result) {
    assert.equal(true, result);

    });

    db.test('TEST').find({Total_items:{$exists:true}}).forEach(function(thing) {
    var date1 = new Date(thing.DTG_posted_UTC);
    var date2 = new Date(thing.read_dtg);
    var dateDiff = date1.getTime() - date2.getTime();


    var data = ({_id:thing._id,DTG_posted_UTC:thing.DTG_posted_UTC, read_dtg:thing.read_dtg ,dateDiff:dateDiff});

    });



    return res.render('test', data);

    });

});

Express服務器加載正常,但是當我訪問“測試”頁面時,應用程序崩潰,並返回:“ ReferenceError:未定義data1”。

我知道查詢正在工作,因為我可以log.console結果,並且按預期工作(見下文)。

app.get('/test', function(req,res){

    db.authenticate('USER', 'PASSWORD', function(err, result) {
    assert.equal(true, result);

    });

    db.test('TEST').find({Total_items:{$exists:true}}).forEach(function(thing) {
    var date1 = new Date(thing.DTG_posted_UTC);
    var date2 = new Date(thing.read_dtg);
    var dateDiff = date1.getTime() - date2.getTime();


    var data = ({_id:thing._id,DTG_posted_UTC:thing.DTG_posted_UTC,read_dtg:thing.read_dtg ,dateDiff:dateDiff});
    console.log(data);
    });



    return res.render('test');

    });

不幸的是,我無法弄清楚如何將Mongo查詢的結果傳遞給我的nunjucks模板。 任何幫助將非常感激。

app.get('/test', function(req, res, next){
    db.authenticate('USER', 'PASSWORD', function (err, result) {
        assert.equal(true, result);
        // if (err)
        //     return next(err);

        db.test('TEST').find({Total_items:{$exists:true}}).forEach(function(thing) {
            var date1 = new Date(thing.DTG_posted_UTC);
            var date2 = new Date(thing.read_dtg);
            var dateDiff = date1.getTime() - date2.getTime();           

            var data = {
                _id: thing._id,
                DTG_posted_UTC: thing.DTG_posted_UTC,
                read_dtg: thing.read_dtg,
                dateDiff: dateDiff
            };

            res.render('test', data);
        });
    });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM