2016-03-21 58 views
0

您好,我是Express/MongoDB/Node的新手。我試圖捕獲並顯示查詢字符串的結果,該查詢字符串在視圖上有兩個輸入。在視圖中顯示快速查詢字符串結果

這裏是擺脫局部一個搜索欄查詢表格:

<form class="navbar-form navbar-left" action="/searchresult" method="GET"> 
     <div class="form-group"> 
     <input class="form-control" type="text" name="name" placeholder="Search Dish"> 
     </div> 
     <div class="form-group"> 
     <input class="form-control" type="text" name="location" placeholder="zipcode"> 
     </div> 
     <button type="submit" class="btn btn-default"></button> 

這裏是路線找到結果:

//SEARCH Route - item query results 
router.get("/searchresult", function(req,res){ 
    //Get search results 
    Item.find({name:req.query.name, location:req.query.location}, function(err, allItems) 
    { 
     if(err){ 
      console.log(err); 
     } else { 
      res.render("searchresult",{allItems}); 
     }  
    }); 
}); 

我怎樣才能在視圖中顯示的結果?

 <div class="container"> 
      <h1>Search Results</h1> 
     </div> 
     //Need Help Here 
+0

首先,確保你正在檢索你想要的數據(檢查'allItems'是否正常)。你可以循環你的'allItems'變量,但是這取決於你使用的模板引擎。如果它是玉石,你可以使用'each in'功能。 – Zalo

回答

0

如果要包括查詢參數(如?search=foo),你會做它像這樣:

 ... 

     res.render('searchresult', {allItems: allItems, location: req.query.location}); 

     ... 

然後,您可以在您的視圖訪問allItemslocation,代碼取決於什麼看法你選擇的引擎。

編輯:目前還不清楚,如果你想在你的意見中的數據庫查詢結果,或查詢字符串(從獲取請求)。上面的答案顯示了兩者。