Javascript 从mongoose发送记录数组
我想在主页上显示mongodb集合中存储的所有帖子的标题和内容。如何将所有记录传递给视图,以便在视图中轻松循环数据 目前我只发送一条记录(以单独变量的形式),但我希望发送记录数组,我可以轻松地循环该数组以在EJS视图中显示数据Javascript 从mongoose发送记录数组,javascript,node.js,express,mongoose,Javascript,Node.js,Express,Mongoose,我想在主页上显示mongodb集合中存储的所有帖子的标题和内容。如何将所有记录传递给视图,以便在视图中轻松循环数据 目前我只发送一条记录(以单独变量的形式),但我希望发送记录数组,我可以轻松地循环该数组以在EJS视图中显示数据 var mongoose = require( 'mongoose' ); var Story = mongoose.model( 'Story' ); exports.home=function(req,res){ var title,content;
var mongoose = require( 'mongoose' );
var Story = mongoose.model( 'Story' );
exports.home=function(req,res){
var title,content;
console.log("Fetching Stories");
Story.findOne({}, function(err,story){
res.render('home',{title:story.title,content:story.content});
});
}
我知道我必须使用Story.find()但是如何添加所有记录
使用.find({},cb)
而不是.findOne()
find()
返回数组中所有匹配的文档
Story.find({}, function(err, stories) {
res.render('home', {stories:stories});
});
故事
将是所有对象的数组但是当我尝试访问数组的元素时,它没有显示出来``明白了,我没有发送该数组来查看故事。查找({},函数(err,stories){console.log(“所有故事:“+stories”);res.render('home',{stories:stories});});另一个问题是,我只在主页上显示了5个博客的摘要,我想提供一个链接和故事摘要。单击该链接,将显示完整的故事。虽然我可以使用makethemarks.org/story/568dff3ec8250e90d1084746这样的id字段来显示,但还有其他方法吗?URL中的id字段看起来很难看。有一个concept称为
URl slug
。您可以使用故事名称为每个故事创建一个slug。确保它是唯一的。如果您的文档中有任何其他唯一的密钥,那么您也可以使用它。我已经接受了它,我的声誉较低,过一段时间它将公开。以前我使用不同的帐户。谢谢又是