express中怎么通过mongoDB查询后的结果渲染ejs模板?
 发布于 9 年前  作者 tcjfy  5010 次预览  最后一次回复是 9 年前  来自 问答 

app.get(’/food’, function(req, res) { Food.findByClass(‘美味汉堡’, function (err, foods) { res.render(‘food’,?); }); }); foods是查询后的结果。

4 回复
JasonSJ
in app.js:

res.render(‘food’,{
    name:'sandwich',
    price:8,
    amount:2
});

in food.ejs:

<!DOCTYPE html>
<html>
  <head>
    <title><%= sandwich %></title>
  </head>
  <body>
    <h1><%= price %></h1>    
    <h1><%= amount %></h1>
  </body>
</html>

tcjfy

@JasonSJ 这个方法我知道。但是假如要传递数据库查询后的json数据怎么办? 比如查询到的结果为foods res.render(‘food’,?);?部分该怎么写? 传递到ejs模板中又要怎么写?

blackjack

1楼 写的挺好的, res.render(‘food’, { foods: foods });

ejs <% foods.forEach() %>

这样应该OK了吧

tcjfy

@blackjack 已经可以解决了,谢谢回答