database - 猫鼬如何从对象中查找所有数据?
问题描述
只是我想查找具有相同对象 ID 但不工作的所有数据
app.get("/admin/phase/:level", function(req,res){
Level.findOne({_id: req.params.level},function(err,onelevel){
console.log(onelevel._id)
Semster.find({level: onelevel._id},function(err,semster){
Module.find({semster: semster._id } , function(err , modules){
console.log(semster)
res.render("semster",{onelevels: onelevel, semsters: semster, modules: modules})})})})});
解决方案
我建议在您的数据库查询中使用async 和 await以便猫鼬有足够的时间来查找文档。话虽如此,我将使用 try-catch 块来响应查询中的错误。
app.get("/admin/phase/:level",async function(req,res){
try{
const onelevel = await Level.findOne({_id: req.params.level});
const semster = await Semster.find({level: onelevel._id});
let modules = [];
for(let i = 0; i < semster.length; i++){
let module = await Module.find({semster: semster[i]._id });
modules.push(...module)
};
res.render("semster",{
onelevels: onelevel,
semsters: semster,
modules: modules})
})
})
})
catch(err){
res.status(500).render("/uhOhPage",{
message: err.message
})
});
推荐阅读
- applescript - AppleScript 移动鼠标并单击 Photoshop 中的特定元素
- c - 将字符转换为整数是创建一个负数?
- delphi - TIdHTTPServer 缓慢使用所有连接
- python - 无法通过串行/Modbus 从 Windows 10 连接到 EPsolar Tracer 3210an 充电控制器
- r - R,如何将数据框的所有列名放入公式中?
- java - Java、Selenium 和 Method.invoke():获取 NoSuchMethodException
- python - Pandas 将列值匹配到同一数据框中的多个列
- r - 即使不存在也添加中断
- date - 如何在 Amazon Redshift 查询中选择上个季度/最近 2 个月的数据
- rollup - 别名或替换外部模块不起作用