Node.js 无法从句柄中的数组访问对象属性
即使看了一眼,我也无法让它工作。我使用的是mongoose模型,只想在对象上迭代并显示标题和详细信息:Node.js 无法从句柄中的数组访问对象属性,node.js,express,mongoose,handlebars.js,express-handlebars,Node.js,Express,Mongoose,Handlebars.js,Express Handlebars,即使看了一眼,我也无法让它工作。我使用的是mongoose模型,只想在对象上迭代并显示标题和详细信息: const mongoose=require('mongoose'); const Schema=mongoose.Schema; const IdeaSchema=新模式({ 标题:{ 类型:字符串, 必填项:true }, 详情:{ 类型:字符串, 必填项:true }, 日期:{ 类型:日期, 默认值:Date.now } }); 猫鼬模型(‘思想’、观念)您没有提供用于填充变量ide
const mongoose=require('mongoose');
const Schema=mongoose.Schema;
const IdeaSchema=新模式({
标题:{
类型:字符串,
必填项:true
},
详情:{
类型:字符串,
必填项:true
},
日期:{
类型:日期,
默认值:Date.now
}
});
猫鼬模型(‘思想’、观念)代码>您没有提供用于填充变量ideas
和设置把手的代码段。请提供,如果您没有这样做,请从以下内容开始:
您需要指定并可能导出(如果在其他模块中使用)Mongoose为您编译的模型,如:
export const IdeaModel = mongoose.model('ideas', IdeaSchema);
然后用它填充变量ideas
,如:
const ideas = IdeaModel.find({}); // fetch all ideas or add query criteria
然后将创意
传递到把手模板
功能中,如下所示:
const html = template({ ideas });
我通过为Handlebar安装一个dev依赖项来解决这个问题。请参阅提供的代码可以解决的问题的详细信息
dbName.find({}).lean().then((ideas) => {
res.render('ideas/index', { ideas: ideas });
});
这是您需要的代码:Idea.find({}).sort({date:'desc'})。然后(ideas=>{res.render('ideas/index',{ideas:ideas});})代码>检查查询是否使用console.log或调试器返回数据。如果是,您需要查阅文档,了解您正在使用的任何express中间件和/或发布设置中间件的代码。