【问题标题】:EJS only showing entire mongo schema, won't display specific data from itEJS 只显示整个 mongo 模式,不会显示其中的特定数据
【发布时间】:2018-01-14 04:43:14
【问题描述】:

我正在尝试使用 EJS 显示来自 mongodb 数据库的一些数据,但我似乎只能让它显示整个架构。例如:

router.get("/", function(req, res){
Prices.find({name: "prices"}, function(err, allPrices){
    if(err){
        console.log(err);
    } else {
        res.render("landing", {prices: allPrices});
    }
});
});

当我在landing.ejs 中将其称为 时,它将显示整个架构,如下所示:

"{ _id: 5a5a475cff999121ec26c1f6, btcPrice: 14237.96986743, ethPrice: 1400.34789518, ltcPrice: 248.07011243, dashPrice: 1094.17162755, name: 'prices', __v:"

现在,当我尝试仅获取特定部分(例如 )时,它不会显示任何内容。我在这里做错了什么?

【问题讨论】:

  • 我认为您正在返回一个包含多个文档的数组,在这种情况下,您可以使用 forEach 循环遍历您的价格对象并检查价格,例如<% prices.forEach(function(el,index){ %> <h2> <%= prices.btcPrice %> <h2> <% }) %>
  • 试试<%= prices[0].btcPrice %>
  • 你就是男人,亚当!非常感谢!虽然,我想知道为什么我不必在应用程序中的其他情况下这样做。没关系,我猜。谢谢,伙计!

标签: javascript node.js mongodb ejs


【解决方案1】:

我认为您正在返回一个包含多个文档的数组,在这种情况下,您可以使用 forEach 循环遍历您的价格对象并检查价格

 <% prices.forEach(function(el,index){ %>
 <h2> <%= prices.btcPrice %> <h2> 
 <% }) %>

【讨论】:

  • 谢谢,但 Adam Patterson 的解决方案效果很好。并不是说这个也不会,但是我太累了,无法检查。上帝保佑
猜你喜欢
  • 2017-10-28
  • 2019-08-21
  • 2021-09-11
  • 2020-06-24
  • 1970-01-01
  • 2018-04-10
  • 2021-10-15
  • 2022-11-02
  • 2015-11-10
相关资源
最近更新 更多