14

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"}]

配列の反復処理に関する jade のドキュメントを読みましたが、JSON でも同じだと思いましたが、機能していません。空白を表示しているだけです。これを試してみると、

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

JSON ドキュメントが表示されます。しかし、これを試してみると、

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

空白が表示されます。表示されるはずのときは「tv」です。誰かがJSONドキュメントの反復を理解するのを手伝ってくれたら、それは素晴らしいことです.

ありがとうございました!

4

1 に答える 1