使用Jade来迭代JSON

我正在尝试使用JADE迭代JSON文档。

我的服务器(运行node.js + express)在.get()请求上执行以下操作,

app.get('/search/', function(req,res){ // Parse the query var dbQuery = url.parse(req.url, true).query; var product = dbQuery.product; var category = dbQuery.category; console.log('Searching for: ' + product + ' in ' + category); //Mongo DB setup then query var result; var server = new mongodb.Server('23.23.129.158', 27017, {}); new mongodb.Db('militaryListDB', server, {}).open(function(err, client){ if(err) throw err; var collection = new mongodb.Collection(client, 'products'); collection.find({}).toArray(function(err, results){ console.log(results); console.log(JSON.stringify(results)); res.render('results', {result: JSON.stringify(results), title: 'Test'}); }); }); }); 

这就是它呈现给客户端的东西。

 [{"_id":"50738ebbe3d87c6beaddb6f2","name":"tv","category":"tech","cost":"30"}] 

我已经阅读了玉的文档迭代数组,我认为这将是相同的JSON,但它不工作。 它只是显示一个空白。 当我尝试这个,

 extends layout block content div#wrapper p #{results} 

它将显示JSON文档。 但是当我尝试这个时,

 extends layout block content div#wrapper p #{results.name} 

并显示一个空格。 当它应该显示是“电视”。 如果有人可以帮我理解迭代JSON文档,这将是非常棒的。

谢谢!

在你的代码中,你不是遍历results数组,所以你应该这样做:

 for result in results p #{result.name}