node.js - 如何在 mongoose 和 mongodb 中显示所有数据并过滤一个?
问题描述
我正在尝试从 mongo 数据库中获取所有数据,但我想专门过滤一个。
我想做的是。让某人点击我的投资组合,向他们展示我创建的内容的详细信息。但在左侧边栏上,我想展示我所做的其他工作。检查图片,您应该会更好地理解。
router.get('/portfolio/:id', function(req, res, next) {
Work.findById(req.params.id, function(err, foundWork) {
console.log(foundWork)
if (err) {
console.log(err);
} else {
res.render('portfolio', {
title: 'Portfólio',
work: foundWork
});
}
});
});
FindById 只显示一个特定项目的结果。
谢谢你的帮助
已编辑------------------------------------------------- ----
所以我更改了代码以从数据库中获取所有数据,并通过 id 过滤我需要的项目。我无法将数据解析到 ejs。当我在 nodejs 中 console.log 数据时,我得到数据。当我控制台登录 ejs 时,我得到未定义。
这是我在nodejs中得到的图片。
我注意到当我遍历过滤的项目时,我得到了我需要的所有数据。当我将一个项目解析为 ejs 时,我认为循环数据是不正确的。
解决方案
所以我自己想出了这个。
我按照用户givehug所说的做了。它起作用了,但是尽管只有一个项目,但我不得不在 ejs 中再次遍历过滤的项目。EJS 不知道过滤后的数组中剩下多少项目,所以我循环了一遍。拿出一件物品,然后我渲染它并且它起作用了。
推荐阅读
- .net - 以下使用 ASP.NET Core 和 MongoDB 创建 Web API:MvcJsonOptions 问题与 UseMemberCasing() 定义
- c++ - 使用 istream_iterators 构造向量比使用 string / std::atof 的 while 循环慢,为什么?
- c# - 将 JObject 添加到 JArray
- angular - “npm start”不在本地主机上运行
- angular - 删除空行
- json - 如何解析 json 相似的字符串并将其映射到 pojo
- python - 如何设置或模拟测试文件中的变量?
- java - CorDapp 示例构建失败
- c - 从基于 OpenCV 静态库的项目中创建可移植静态库
- python - Numpy 神经网络中的权重没有更新,错误是静态的