2017-10-09 18 views
0

mongooseからのデータを使用して、jqueryを使用してpugページのデータを入力しようとしています。私のパグテンプレートでJqueryのmongooseオブジェクトを反復処理します

[ 
    { _id: 'Pending', count: 10 }, 
    { _id: 'In Progress', count: 10 } 
] 

私は結果をループしようと引っ張っています:

test.aggregate(
     [ 
      { 
       $group: { 
        _id: '$status', 
        count: {$sum: 1} 
       } 
      } 
     ], function (err, result) { 
      if (err) { 
       console.log(err); 
      } else { 
       console.log(result); 
       res.render('graphs', {info: result}); 
      } 
     }); 

は、これは私がコンソールに「結果」を送信、次のデータを引き出し: はここに私のコードです各オブジェクトの '_id'と 'count'。私は、ループ内ではなく、パグ側のためのノード側でこれを行うことができます。

doctype html 
html 
head 
title Main Page 
script(type='text/javascript'). 
var results = "#{info}"; 
    $.each(results, function() { 
     console.log(object); 
    }); 

これは私が受信エラーであり、私はそれが与えるコンソールに「情報」を入れて、[オブジェクトのオブジェクト] 、[オブジェクトオブジェクト] 'どんな助けも素晴らしいだろう。

あなたはJavaScriptで使用される変数のためのヒスイの構文に infoを変換する !{JSON.stringify(info)}コールを使用する必要があります

Uncaught TypeError: Cannot use 'in' operator to search for 'length' in ([object Object],[object Object]

答えて

0

doctype html 
html 
head 
title Main Page 
script(type='text/javascript'). 
    var results = !{JSON.stringify(info)} 
    $.each(results, function() { 
    console.log(object); 
    }); 

また、あなたが適切なインデント、レベルごとに2つのまたは4つのスペースを使用する必要があります。

+0

正確に私が必要としたもの。私はこれを理解しようとする日でなければ、何時間も頭を悩ませています。ありがとう。 – Rylore