Handlebar模板访问nodejs中的mongo collection.find()变量

时间:2014-04-30 14:58:54

标签: javascript node.js mongodb handlebars.js

我有nodejs express脚本,如下所示

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

        db.open(function(err,db) {
        var collection = db.collection('form');
    collection.find({ contact: 'James Wong' }).toArray(function(err, docs) {
        console.log(docs); 
   /*It will  will give an output something like
      { _id: 53533045fec60bd941c04a22,
       contact: 'James Wong'} */


        res.render('approval.handlebars',{resultfind : docs});
           /*it will give an output as [object Object]

        db.close();
      });

    });

我的console.log(docs)输出采用JSON ARRAY格式,这是正确的。即

{ _id: 53533045fec60bd941c04a22,
       contact: 'James Wong'} */

但是当我使用res.render在handlebartemplate中显示它时,结果将如下所示;

[object Object]

我的模板位于

之下
<div>
{{resultfind}}
</div>

我想访问这些对象属性。

1 个答案:

答案 0 :(得分:1)

得到了解决..谢谢TheShellfishMeme。

要做的两件事

1)代替toArray函数,用每个函数替换它。这是为了维护json格式

2)在html {{resulfind.contact}}

访问JSON格式

干杯